1#! /bin/sh 2 3# edit this to taste; note that you can also override via the environment: 4case "$CC" in 5 "") CC=cc 6esac 7 8if test -f config.h; then :; else 9 echo "Creating basic config.h..." 10 cat >config.h <<'END_OF_CONFIG_H' 11/* A bootstrap version of config.h, for systems which can't 12 auto-configure due to a lack of a working sed. If you are on 13 a sufficiently odd machine you may need to hand-tweak this file. 14 15 Regardless, once you get a working version of sed you really should 16 re-build starting with a run of "configure", as the bootstrap 17 version is almost certainly more crippled than it needs to be on 18 your machine. 19*/ 20 21#define PACKAGE "sed" 22#define VERSION "@VERSION@-boot" 23#define SED_FEATURE_VERSION "@SED_FEATURE_VERSION@" 24#define BOOTSTRAP 1 25 26/* Define if your compiler/headers don't support const. */ 27#undef const 28 29/* Undefine if headers have conflicting definition. */ 30#define mbstate_t int 31 32/* Toggle if you encounter errors in lib/mkstemp.c. */ 33#define HAVE_UNISTD_H 34#define HAVE_FCNTL_H 35#undef HAVE_SYS_FILE_H 36#undef HAVE_IO_H 37 38/* Undefine if <stdio.h> or <sys/types.h> has conflicting definition. */ 39#define size_t unsigned 40#define ssize_t int 41 42/* If your antique compiler doesn't grok ``void *'', then #define VOID char */ 43#undef VOID 44 45 46/* All other config.h.in options intentionally omitted. Report as a 47 bug if you need extra "#define"s in here. */ 48END_OF_CONFIG_H 49fi 50 51# tell the user what we're doing from here on... 52set -x -e 53 54# the ``|| exit 1''s are for fail-stop; set -e doesn't work on some systems 55 56rm -f lib/*.o sed/*.o sed/sed 57cd lib || exit 1 58rm -f regex.h 59cp regex_.h regex.h 60${CC} -DHAVE_CONFIG_H -I.. -I. -c alloca.c 61${CC} -DHAVE_CONFIG_H -I.. -I. -c getline.c || exit 1 62${CC} -DHAVE_CONFIG_H -I.. -I. -c getopt.c || exit 1 63${CC} -DHAVE_CONFIG_H -I.. -I. -c getopt1.c || exit 1 64${CC} -DHAVE_CONFIG_H -I.. -I. -c memchr.c || exit 1 65${CC} -DHAVE_CONFIG_H -I.. -I. -c memcmp.c || exit 1 66${CC} -DHAVE_CONFIG_H -I.. -I. -c memmove.c || exit 1 67${CC} -DHAVE_CONFIG_H -I.. -I. -c mkstemp.c || exit 1 68${CC} -DHAVE_CONFIG_H -I.. -I. -c strverscmp.c || exit 1 69${CC} -DHAVE_CONFIG_H -I.. -I. -c obstack.c || exit 1 70${CC} -DHAVE_CONFIG_H -I.. -I. -c regex.c || exit 1 71${CC} -DHAVE_CONFIG_H -I.. -I. -c strerror.c || exit 1 72${CC} -DHAVE_CONFIG_H -I.. -I. -c utils.c || exit 1 73 74cd ../pcre || exit 1 75${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regdebug.c || exit 1 76${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regexp.c || exit 1 77${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c reginfo.c || exit 1 78${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regperl.c || exit 1 79${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regposix.c || exit 1 80${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regstudy.c || exit 1 81${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regsub.c || exit 1 82${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regtables.c || exit 1 83 84cd ../sed || exit 1 85${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c sed.c || exit 1 86${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c fmt.c || exit 1 87${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c compile.c || exit 1 88${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c execute.c || exit 1 89${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c mbcs.c || exit 1 90${CC} -DHAVE_CONFIG_H -I.. -I. -I../lib -c regexp.c || exit 1 91 92${CC} -o sed *.o ../lib/*.o || exit 1 93