revise build to avoid ld
and nicear
The Chez Scheme build process now create an archive instead of linking "kernel.o". Adjust the Racket CS build to use archives instead of "kernel.o". Also, modernize the Racket build's use of `ar`. Using the flags `rc` by default (instead of `ruv`) should avoid the need for `nicear`.
This commit is contained in:
parent
5c51096a88
commit
90b79524aa
|
@ -4594,7 +4594,7 @@ fi
|
|||
fi
|
||||
fi
|
||||
if test "$ARFLAGS" = '' ; then
|
||||
ARFLAGS=ruv
|
||||
ARFLAGS=rc
|
||||
fi
|
||||
|
||||
# If using gcc, we want all warnings:
|
||||
|
|
|
@ -16,7 +16,6 @@ SCHEME_TARGET_INC = $(SCHEME_SRC)/$(TARGET_MACH)/boot/$(TARGET_MACH)
|
|||
CC = @CC@
|
||||
BASE_CFLAGS = @CFLAGS@ @CPPFLAGS@
|
||||
CFLAGS = $(BASE_CFLAGS) -I$(SCHEME_TARGET_INC) -I$(srcdir)/../../rktio -Irktio -I.
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBS = @LIBS@
|
||||
AR = @AR@
|
||||
|
@ -141,7 +140,7 @@ scheme-make-copy:
|
|||
if [ ! -d "$(SCHEME_SRC)" ] ; then cp -r $(srcdir)/../../ChezScheme "$(SCHEME_SRC)" ; fi
|
||||
$(MAKE) scheme-make-finish
|
||||
|
||||
SCHEME_CONFIG_VARS = CC="$(CC)" CFLAGS="$(BASE_CFLAGS)" LD="$(LD)" LDFLAGS="$(LDFLAGS)" \
|
||||
SCHEME_CONFIG_VARS = CC="$(CC)" CFLAGS="$(BASE_CFLAGS)" LDFLAGS="$(LDFLAGS)" \
|
||||
AR="$(AR)" ARFLAGS="$(ARFLAGS)" RANLIB="$(RANLIB)" \
|
||||
WINDRES="$(WINDRES)"
|
||||
|
||||
|
@ -205,7 +204,11 @@ racketcs@NOT_OSX@@NOT_MINGW@: raw_racketcs petite-v.boot scheme-v.boot racket-v.
|
|||
gracketcs@NOT_OSX@@NOT_MINGW@: raw_gracketcs petite-v.boot scheme-v.boot racket-v.boot $(EMBED_DEPS)
|
||||
$(BOOTSTRAP_RACKET) $(srcdir)/embed-boot.rkt @ELF_COMP@ @BOOT_COMPRESS_COMP@ raw_gracketcs gracketcs petite-v.boot scheme-v.boot racket-v.boot
|
||||
|
||||
BOOT_OBJS = boot.o $(SCHEME_TARGET_INC)/kernel.o rktio/librktio.a
|
||||
SCHEME_LIBS = $(SCHEME_TARGET_INC)/libkernel.a \
|
||||
$(SCHEME_TARGET_INC)/../../lz4/lib/liblz4.a \
|
||||
$(SCHEME_TARGET_INC)/../../zlib/libz.a
|
||||
|
||||
BOOT_OBJS = boot.o $(SCHEME_LIBS) rktio/librktio.a
|
||||
|
||||
raw_racketcs: main.o boot.o $(BOOT_OBJS)
|
||||
$(CC) $(CFLAGS) -o raw_racketcs main.o $(BOOT_OBJS) $(LDFLAGS) $(LIBS)
|
||||
|
|
7
racket/src/cs/c/configure
vendored
7
racket/src/cs/c/configure
vendored
|
@ -3878,11 +3878,9 @@ fi
|
|||
fi
|
||||
fi
|
||||
if test "$ARFLAGS" = '' ; then
|
||||
ARFLAGS=ruv
|
||||
ARFLAGS=rc
|
||||
fi
|
||||
|
||||
LD="${ac_tool_prefix}ld"
|
||||
|
||||
WINDRES=windres
|
||||
|
||||
############## platform tests ################
|
||||
|
@ -3909,7 +3907,7 @@ case "$host_os" in
|
|||
openbsd*)
|
||||
MACH_OS=ob
|
||||
LIBS="${LIBS} -L/usr/local/lib -liconv -lm -lpthread -lossp-uuid"
|
||||
LDFLAGS="{$LDFLAGS} -Wl,-zwxneeded"
|
||||
LDFLAGS="${LDFLAGS} -Wl,-zwxneeded"
|
||||
# Can't strip until ELF lookup added to startup
|
||||
enable_strip=no
|
||||
;;
|
||||
|
@ -4986,7 +4984,6 @@ done
|
|||
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} CC="'"'"${CC}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} CFLAGS="'"'"${CFLAGS}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} LD="'"'"${LD}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} LDFLAGS="'"'"${LDFLAGS}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} AR="'"'"${AR}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} ARFLAGS="'"'"${ARFLAGS}"'"'
|
||||
|
|
|
@ -159,11 +159,9 @@ if test "$AR" = '' ; then
|
|||
fi
|
||||
fi
|
||||
if test "$ARFLAGS" = '' ; then
|
||||
ARFLAGS=ruv
|
||||
ARFLAGS=rc
|
||||
fi
|
||||
|
||||
LD="${ac_tool_prefix}ld"
|
||||
|
||||
WINDRES=windres
|
||||
|
||||
############## platform tests ################
|
||||
|
@ -190,7 +188,7 @@ case "$host_os" in
|
|||
openbsd*)
|
||||
MACH_OS=ob
|
||||
LIBS="${LIBS} -L/usr/local/lib -liconv -lm -lpthread -lossp-uuid"
|
||||
LDFLAGS="{$LDFLAGS} -Wl,-zwxneeded"
|
||||
LDFLAGS="${LDFLAGS} -Wl,-zwxneeded"
|
||||
# Can't strip until ELF lookup added to startup
|
||||
enable_strip=no
|
||||
;;
|
||||
|
@ -604,7 +602,6 @@ done
|
|||
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} CC="'"'"${CC}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} CFLAGS="'"'"${CFLAGS}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} LD="'"'"${LD}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} LDFLAGS="'"'"${LDFLAGS}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} AR="'"'"${AR}"'"'
|
||||
SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} ARFLAGS="'"'"${ARFLAGS}"'"'
|
||||
|
|
|
@ -32,7 +32,6 @@ CPP = @CPP@
|
|||
CFLAGS = @CFLAGS@ @COMPFLAGS@ @PROFFLAGS@
|
||||
CPPFLAGS = @PREFLAGS@
|
||||
|
||||
NICEAR = $(mainsrcdir)/utils/nicear
|
||||
AR = @AR@
|
||||
ARFLAGS = @ARFLAGS@
|
||||
RANLIB = @RANLIB@
|
||||
|
@ -144,7 +143,7 @@ sproc-extra-lib:
|
|||
$(MAKE) sproc.@LTO@
|
||||
|
||||
gc.@LIBSFX@:
|
||||
$(NICEAR) $(AR) $(ARFLAGS) @GCDIR@/gc.@LIBSFX@ @GCDIR@/*.@LTO@
|
||||
$(AR) $(ARFLAGS) @GCDIR@/gc.@LIBSFX@ @GCDIR@/*.@LTO@
|
||||
|
||||
# Compilation of the foreign libraries (this compiles all of them)
|
||||
foreign-stuff:
|
||||
|
@ -194,8 +193,7 @@ LIBRKTIO_FOR_DLL = $(LIBRKTIO_FOR_DLL_@LIBSFX@)
|
|||
LIBRKTIO_FOR_LIB = $(LIBRKTIO_FOR_LIB_@LIBSFX@)
|
||||
|
||||
libracket.@LIBSFX@: src/*.@LTO@ $(@FOREIGN_IF_USED@_LIB) $(LIBRKTIO_FOR_DLL)
|
||||
$(NICEAR) $(AR) $(ARFLAGS) libracket.@LIBSFX@ src/*.@LTO@ $(@FOREIGN_IF_USED@_OBJSLIB) $(LIBRKTIO_FOR_DLL) @LIBRACKET_DEP@
|
||||
$(RANLIB) libracket.@LIBSFX@
|
||||
$(AR) $(ARFLAGS) libracket.@LIBSFX@ src/*.@LTO@ $(@FOREIGN_IF_USED@_OBJSLIB) $(LIBRKTIO_FOR_DLL) @LIBRACKET_DEP@
|
||||
|
||||
# Irix sproc, only
|
||||
sproc.@LTO@: @GCDIR@/sproc.@LTO@
|
||||
|
|
|
@ -454,7 +454,7 @@ if test "$AR" = '' ; then
|
|||
fi
|
||||
fi
|
||||
if test "$ARFLAGS" = '' ; then
|
||||
ARFLAGS=ruv
|
||||
ARFLAGS=rc
|
||||
fi
|
||||
|
||||
# If using gcc, we want all warnings:
|
||||
|
|
|
@ -339,7 +339,6 @@ HOSTCFLAGS=$(BASEFLAGS)
|
|||
#
|
||||
|
||||
CXXFLAGS= $(ALL_CFLAGS)
|
||||
NICEAR = $(mainsrcdir)/utils/nicear
|
||||
AR= @AR@
|
||||
ARFLAGS= @ARFLAGS@
|
||||
RANLIB= @RANLIB@
|
||||
|
@ -503,7 +502,7 @@ tests:
|
|||
|
||||
# PLTSCHEME: make ../libmzgc.a, and use $(AR), $(RANLIB), and @LIBSFX@:
|
||||
base_lib ../libmzgc.@LIBSFX@: $(OBJS) dyn_load.@LTO@ $(UTILS)
|
||||
$(NICEAR) $(AR) $(ARFLAGS) ../libmzgc.@LIBSFX@ $(OBJS) dyn_load.@LTO@
|
||||
$(AR) $(ARFLAGS) ../libmzgc.@LIBSFX@ $(OBJS) dyn_load.@LTO@
|
||||
$(RANLIB) ../libmzgc.@LIBSFX@
|
||||
|
||||
cords: $(CORD_OBJS) cord/cordtest $(UTILS)
|
||||
|
|
|
@ -18,7 +18,6 @@ mainsrcdir = @srcdir@/../..
|
|||
CC = @CC@
|
||||
CPP = @CPP@
|
||||
CXX = @CXX@
|
||||
NICEAR = $(mainsrcdir)/utils/nicear
|
||||
AR = @AR@
|
||||
ARFLAGS = @ARFLAGS@
|
||||
RANLIB = @RANLIB@
|
||||
|
@ -584,8 +583,7 @@ EXTRA_OBJS_T = $(EXTRA_GMP) ../src/unwind.@LTO@ $(@FOREIGN_IF_USED@_LIB) $(LIBRK
|
|||
EXTRA_OBJS_L = $(EXTRA_GMP) ../src/unwind.@LTO@ $(@FOREIGN_IF_USED@_OBJSLIB) $(LIBRKTIO_FOR_DLL)
|
||||
|
||||
../libracket3m.@LIBSFX@: $(OBJS) $(EXTRA_OBJS_T) gc2.@LTO@
|
||||
$(NICEAR) $(AR) $(ARFLAGS) ../libracket3m.@LIBSFX@ $(OBJS) $(EXTRA_OBJS_L) gc2.@LTO@
|
||||
$(RANLIB) ../libracket3m.@LIBSFX@
|
||||
$(AR) $(ARFLAGS) ../libracket3m.@LIBSFX@ $(OBJS) $(EXTRA_OBJS_L) gc2.@LTO@
|
||||
|
||||
../racket@MMM@@NOT_OSX@@NOT_MINGW@: main.@LTO@ ../libracket3m.@LIBSFX@ $(LIBRKTIO_FOR_LIB)
|
||||
cd ..; @MZLINKER@ -o racket@MMM@ @PROFFLAGS@ gc2/main.@LTO@ libracket3m.@LIBSFX@ $(LIBRKTIO_UP_FOR_LIB) @LDFLAGS@ $(LIBS)
|
||||
|
|
|
@ -14,7 +14,6 @@ mainsrcdir = @srcdir@/../..
|
|||
CC = @CC@
|
||||
CXX = @CXX@
|
||||
RANLIB = @RANLIB@
|
||||
NICEAR = $(srcdir)/../../utils/nicear
|
||||
AR = @AR@
|
||||
ARFLAGS = @ARFLAGS@
|
||||
|
||||
|
@ -27,7 +26,7 @@ SRCS = $(srcdir)/sgc.c
|
|||
|
||||
../libmzgc.@LIBSFX@: $(OBJS)
|
||||
$(MAKE) gcobjects
|
||||
$(NICEAR) $(AR) $(ARFLAGS) ../libmzgc.@LIBSFX@ $(OBJS)
|
||||
$(AR) $(ARFLAGS) ../libmzgc.@LIBSFX@ $(OBJS)
|
||||
$(RANLIB) ../libmzgc.@LIBSFX@
|
||||
|
||||
test: $(OBJS) test.@LTO@
|
||||
|
|
|
@ -7,7 +7,6 @@ LDFLAGS = @LDFLAGS@
|
|||
LIBS = @LIBS@
|
||||
RKTLINKER = @RKTLINKER@
|
||||
|
||||
NICEAR = $(srcdir)/../utils/nicear
|
||||
STATIC_AR = @STATIC_AR@
|
||||
ARFLAGS = @ARFLAGS@
|
||||
RANLIB = @RANLIB@
|
||||
|
@ -57,8 +56,7 @@ default_rktio:
|
|||
$(MAKE) librktio.@LTA@
|
||||
|
||||
@HIDE_NOT_STANDALONE@librktio.@LTA@: $(OBJS)
|
||||
$(NICEAR) $(STATIC_AR) $(ARFLAGS) @HIDE_NOT_STANDALONE@librktio.@LTA@ $(OBJS)
|
||||
$(RANLIB) @HIDE_NOT_STANDALONE@librktio.@LTA@
|
||||
$(STATIC_AR) $(ARFLAGS) @HIDE_NOT_STANDALONE@librktio.@LTA@ $(OBJS)
|
||||
|
||||
demo: rktio_demo
|
||||
./rktio_demo $(ARGS)
|
||||
|
@ -175,7 +173,7 @@ $(srcdir)/rktio.def: $(srcdir)/rktio.h $(srcdir)/parse.rkt
|
|||
|
||||
# Builds a shared object; requires `configure --enable-standalone`
|
||||
@HIDE_STANDALONE@librktio.@LIBSFX@: $(OBJS)
|
||||
$(NICEAR) $(AR) @HIDE_STANDALONE@librktio.@LIBSFX@ $(OBJS) $(LDFLAGS) $(LIBS)
|
||||
$(AR) @HIDE_STANDALONE@librktio.@LIBSFX@ $(OBJS) $(LDFLAGS) $(LIBS)
|
||||
|
||||
# Builds a shared object and installs it to `configure --prefix=...` target
|
||||
install-shared-object:
|
||||
|
|
2
racket/src/rktio/configure
vendored
2
racket/src/rktio/configure
vendored
|
@ -3223,7 +3223,7 @@ fi
|
|||
fi
|
||||
fi
|
||||
if test "$ARFLAGS" = '' ; then
|
||||
ARFLAGS=ruv
|
||||
ARFLAGS=rc
|
||||
fi
|
||||
|
||||
|
||||
|
|
|
@ -47,7 +47,7 @@ if test "$AR" = '' ; then
|
|||
fi
|
||||
fi
|
||||
if test "$ARFLAGS" = '' ; then
|
||||
ARFLAGS=ruv
|
||||
ARFLAGS=rc
|
||||
fi
|
||||
|
||||
AC_CHECK_LIB(m, fmod)
|
||||
|
|
|
@ -343,7 +343,7 @@ if test "$AR" = '' ; then
|
|||
fi
|
||||
fi
|
||||
if test "$ARFLAGS" = '' ; then
|
||||
ARFLAGS=ruv
|
||||
ARFLAGS=rc
|
||||
fi
|
||||
|
||||
# If using gcc, we want all warnings:
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
$* 2>&1 | awk '/^ar: creating / || /^[ar] \-/ || / modifier ignored / { print } ! ( /ar: creating / || /^[ar] \-/ || / modifier ignored / ) { print | "cat 1>&2" }'
|
Loading…
Reference in New Issue
Block a user