mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2026-01-23 13:01:42 -08:00
fix parallel builds
This commit is contained in:
parent
adbedd31de
commit
cb3294fc7b
5 changed files with 41 additions and 37 deletions
|
|
@ -91,6 +91,9 @@ c/ecl/external.h: $(top_srcdir)/h/external.h
|
|||
test -d c/ecl || mkdir c/ecl
|
||||
sed 's,__declspec(dllimport),,g' $(top_srcdir)/h/external.h > $@
|
||||
|
||||
ecl/external.h: c/ecl/external.h c/ecl/external.h
|
||||
cp -rf $(srcdir)/h/*.h $(srcdir)/h/impl ecl/
|
||||
|
||||
bin/$(ECL): $(ECL_MIN) compile.lsp ecl/external.h build-stamp $(top_srcdir)/lsp/*.lsp $(top_srcdir)/clos/*.lsp $(top_srcdir)/*cmp/*.lsp
|
||||
if [ -f CROSS-COMPILER ]; then \
|
||||
./CROSS-COMPILER compile; \
|
||||
|
|
@ -135,17 +138,17 @@ libeclgmp.a:
|
|||
fi
|
||||
|
||||
# final objects archive
|
||||
libeclmin.a: libeclgmp.a libeclatomic.a libeclgc.a libeclffi.a $(OFILES) @EXTRA_OBJS@ c/all_symbols.o c/all_symbols2.o lsp/config.lsp $(ECL_CMPDIR)/cmpdefs.lsp ecl/external.h
|
||||
libeclmin.a: libeclgmp.a libeclatomic.a libeclgc.a libeclffi.a lsp/config.lsp $(ECL_CMPDIR)/cmpdefs.lsp ecl/external.h
|
||||
@echo "Building $@..."
|
||||
cd c; $(MAKE)
|
||||
|
||||
$(ECL_MIN): $(LIBRARIES) .gdbinit libeclmin.a c/cinit.o
|
||||
$(ECL_MIN): $(LIBRARIES) .gdbinit libeclmin.a
|
||||
@echo "Building $@..."
|
||||
if [ -f CROSS-COMPILER ]; then \
|
||||
touch $@; \
|
||||
else \
|
||||
$(CC) $(LDFLAGS) -o $@ \
|
||||
c/cinit.o c/all_symbols.o \
|
||||
cinit.o c/all_symbols.o \
|
||||
-L./ libeclmin.a \
|
||||
$(CORE_LIBS) $(FASL_LIBS) $(LIBS);\
|
||||
fi
|
||||
|
|
|
|||
10
src/aclocal.m4
vendored
10
src/aclocal.m4
vendored
|
|
@ -247,7 +247,7 @@ THREAD_CFLAGS=''
|
|||
THREAD_LIBS=''
|
||||
THREAD_GC_FLAGS='--enable-threads=posix'
|
||||
INSTALL_TARGET='install'
|
||||
THREAD_OBJ="$THREAD_OBJ c/threads/process c/threads/queue c/threads/mutex c/threads/condition_variable c/threads/semaphore c/threads/barrier c/threads/mailbox"
|
||||
THREAD_OBJ="$THREAD_OBJ threads/process threads/queue threads/mutex threads/condition_variable threads/semaphore threads/barrier threads/mailbox"
|
||||
clibs='-lm'
|
||||
SONAME=''
|
||||
SONAME_LDFLAGS=''
|
||||
|
|
@ -923,7 +923,7 @@ AC_CHECK_FUNC( [pthread_rwlock_init], [
|
|||
AC_DEFINE([HAVE_POSIX_RWLOCK], [], [HAVE_POSIX_RWLOCK])
|
||||
], [])
|
||||
], [])
|
||||
THREAD_OBJ="$THREAD_OBJ c/threads/rwlock"
|
||||
THREAD_OBJ="$THREAD_OBJ threads/rwlock"
|
||||
])
|
||||
|
||||
|
||||
|
|
@ -1040,7 +1040,7 @@ if test "${enable_boehm}" = auto -o "${enable_boehm}" = system; then
|
|||
fi
|
||||
else
|
||||
FASL_LIBS="${FASL_LIBS} -lgc"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/alloc_2.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} alloc_2.${OBJEXT}"
|
||||
AC_DEFINE(GBC_BOEHM, [1], [Use Boehm's garbage collector])
|
||||
fi
|
||||
fi
|
||||
|
|
@ -1071,7 +1071,7 @@ if test "${enable_boehm}" = "included"; then
|
|||
ECL_BOEHM_GC_HEADER='ecl/gc/gc.h'
|
||||
SUBDIRS="${SUBDIRS} gc"
|
||||
CORE_LIBS="-leclgc ${CORE_LIBS}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/alloc_2.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} alloc_2.${OBJEXT}"
|
||||
if test "${enable_shared}" = "no"; then
|
||||
LIBRARIES="${LIBRARIES} ${LIBPREFIX}eclgc.${LIBEXT}"
|
||||
fi
|
||||
|
|
@ -1144,7 +1144,7 @@ if test "${enable_libffi}" = "included"; then
|
|||
ECL_LIBFFI_HEADER='ecl/ffi.h'
|
||||
SUBDIRS="${SUBDIRS} libffi"
|
||||
CORE_LIBS="-leclffi ${CORE_LIBS}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/alloc_2.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} alloc_2.${OBJEXT}"
|
||||
if test "${enable_shared}" = "no"; then
|
||||
LIBRARIES="${LIBRARIES} ${LIBPREFIX}eclffi.${LIBEXT}"
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -12,9 +12,9 @@ VPATH = @srcdir@
|
|||
#
|
||||
CC = @CC@
|
||||
TRUE_CC = $(CC)
|
||||
CFLAGS = -Werror -Wno-error=shift-count-overflow \
|
||||
-I. -I@true_builddir@ -I$(srcdir) -I../ecl/gc -DECL_BUILD -DECL_API \
|
||||
-DECL_NO_LEGACY @CPPFLAGS@ @CFLAGS@ @ECL_CFLAGS@ -c
|
||||
CFLAGS = -Wall -I. -I@true_builddir@ -I$(srcdir) -I../ecl/gc \
|
||||
-DECL_BUILD -DECL_API -DECL_NO_LEGACY @CPPFLAGS@ @CFLAGS@ \
|
||||
@ECL_CFLAGS@ -c
|
||||
|
||||
# The following flags could be added and used by GCC
|
||||
# -Wall -W -Wfloat-equal -Wundef -Wendif-labels -Wpointer-arith -Wcast-align \
|
||||
|
|
@ -40,9 +40,9 @@ includedir=@includedir@
|
|||
# Files
|
||||
|
||||
HDIR = ../ecl
|
||||
HFILES = $(HDIR)/config.h $(HDIR)/ecl.h $(HDIR)/ecl-cmp.h \
|
||||
$(HDIR)/object.h $(HDIR)/cs.h $(HDIR)/stacks.h \
|
||||
$(HDIR)/external.h $(HDIR)/cons.h $(HDIR)/legacy.h \
|
||||
HFILES = $(HDIR)/config.h $(HDIR)/ecl.h $(HDIR)/ecl-cmp.h \
|
||||
$(HDIR)/object.h $(HDIR)/cs.h $(HDIR)/stacks.h \
|
||||
$(HDIR)/external.h $(HDIR)/cons.h $(HDIR)/legacy.h \
|
||||
$(HDIR)/number.h $(HDIR)/page.h
|
||||
OBJS = main.o symbol.o package.o cons.o list.o apply.o eval.o \
|
||||
interpreter.o compiler.o disassembler.o instance.o gfun.o \
|
||||
|
|
@ -74,20 +74,18 @@ OBJS = main.o symbol.o package.o cons.o list.o apply.o eval.o \
|
|||
.SUFFIXES: .c .o .d .s
|
||||
.PHONY: all
|
||||
|
||||
all: $(DPP) ../libeclmin.a ../cinit.o
|
||||
all: $(DPP) ../libeclmin.a ../cinit.o
|
||||
|
||||
.d.c: $(DPP)
|
||||
if test -f ../CROSS-DPP ; then ../CROSS-DPP $< $@ ; else $(DPP) $< $@ ; fi
|
||||
.d.o: $(DPP)
|
||||
@echo "Compiling $@..."
|
||||
if test -f ../CROSS-DPP ; then ../CROSS-DPP $< $@.c ; else $(DPP) $< $@.c ; fi
|
||||
$(CC) -DECLDIR="\"@ecldir@\"" $(CFLAGS) -o $@ $@.c
|
||||
.c.o: $(HFILES)
|
||||
@echo "Compiling $@..."
|
||||
$(CC) -DECLDIR="\"@ecldir@\"" $(CFLAGS) -o $@ $<
|
||||
.d.s: $(HFILES)
|
||||
if test -f ../CROSS-DPP ; then ../CROSS-DPP $< $@.c ; else $(DPP) $< $@.c ; fi
|
||||
$(CC) -DECLDIR="\"@ecldir@\"" $(CFLAGS) -S -o $@ $@.c
|
||||
# .d.s: $(HFILES)
|
||||
# if test -f ../CROSS-DPP ; then ../CROSS-DPP $< $@.c ; else $(DPP) $< $@.c ; fi
|
||||
# $(CC) -DECLDIR="\"@ecldir@\"" $(CFLAGS) -S -o $@ $@.c
|
||||
|
||||
../libeclmin.a: $(OBJS) all_symbols.o all_symbols2.o
|
||||
$(RM) $@
|
||||
|
|
@ -95,7 +93,7 @@ all: $(DPP) ../libeclmin.a ../cinit.o
|
|||
$(RANLIB) $@
|
||||
|
||||
clean:
|
||||
$(RM) $(DPP) *.c *.h $(OBJS) all_symbols.o all_symbols2.o ../libecl.a cinit.o core a.out tmp.c
|
||||
$(RM) $(DPP) *.c *.h $(OBJS) all_symbols.o all_symbols2.o ../libecl.a ../cinit.o core a.out tmp.c
|
||||
|
||||
# Build rules
|
||||
|
||||
|
|
|
|||
24
src/configure
vendored
24
src/configure
vendored
|
|
@ -3020,7 +3020,8 @@ boehm_configure_flags=""
|
|||
|
||||
|
||||
TARGETS='bin/ecl$(EXE)'
|
||||
LSP_FEATURES='*features*'
|
||||
SUBDIRS=c
|
||||
LSP_FEATURES='*features*'
|
||||
|
||||
|
||||
# Make sure we can run config.sub.
|
||||
|
|
@ -4875,7 +4876,7 @@ THREAD_CFLAGS=''
|
|||
THREAD_LIBS=''
|
||||
THREAD_GC_FLAGS='--enable-threads=posix'
|
||||
INSTALL_TARGET='install'
|
||||
THREAD_OBJ="$THREAD_OBJ c/threads/process c/threads/queue c/threads/mutex c/threads/condition_variable c/threads/semaphore c/threads/barrier c/threads/mailbox"
|
||||
THREAD_OBJ="$THREAD_OBJ threads/process threads/queue threads/mutex threads/condition_variable threads/semaphore threads/barrier threads/mailbox"
|
||||
clibs='-lm'
|
||||
SONAME=''
|
||||
SONAME_LDFLAGS=''
|
||||
|
|
@ -5638,7 +5639,7 @@ else
|
|||
fi
|
||||
|
||||
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/big.o"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} big.o"
|
||||
if test "x${with_system_gmp}" = "xno" ; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: Configuring included GMP library:" >&5
|
||||
$as_echo "$as_me: Configuring included GMP library:" >&6;}
|
||||
|
|
@ -5893,7 +5894,7 @@ fi
|
|||
|
||||
fi
|
||||
|
||||
THREAD_OBJ="$THREAD_OBJ c/threads/rwlock"
|
||||
THREAD_OBJ="$THREAD_OBJ threads/rwlock"
|
||||
|
||||
boehm_configure_flags="${boehm_configure_flags} ${THREAD_GC_FLAGS}"
|
||||
for k in $THREAD_OBJ; do EXTRA_OBJS="$EXTRA_OBJS ${k}.${OBJEXT}"; done
|
||||
|
|
@ -6160,7 +6161,7 @@ $as_echo "${system_boehm} " >&6; }
|
|||
fi
|
||||
else
|
||||
FASL_LIBS="${FASL_LIBS} -lgc"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/alloc_2.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} alloc_2.${OBJEXT}"
|
||||
|
||||
$as_echo "#define GBC_BOEHM 1" >>confdefs.h
|
||||
|
||||
|
|
@ -6189,7 +6190,7 @@ $as_echo "$as_me: Configuring included Boehm GC library:" >&6;}
|
|||
ECL_BOEHM_GC_HEADER='ecl/gc/gc.h'
|
||||
SUBDIRS="${SUBDIRS} gc"
|
||||
CORE_LIBS="-leclgc ${CORE_LIBS}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/alloc_2.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} alloc_2.${OBJEXT}"
|
||||
if test "${enable_shared}" = "no"; then
|
||||
LIBRARIES="${LIBRARIES} ${LIBPREFIX}eclgc.${LIBEXT}"
|
||||
fi
|
||||
|
|
@ -6323,7 +6324,7 @@ $as_echo "$as_me: Configuring included libffi library:" >&6;}
|
|||
ECL_LIBFFI_HEADER='ecl/ffi.h'
|
||||
SUBDIRS="${SUBDIRS} libffi"
|
||||
CORE_LIBS="-leclffi ${CORE_LIBS}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/alloc_2.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} alloc_2.${OBJEXT}"
|
||||
if test "${enable_shared}" = "no"; then
|
||||
LIBRARIES="${LIBRARIES} ${LIBPREFIX}eclffi.${LIBEXT}"
|
||||
fi
|
||||
|
|
@ -9566,7 +9567,7 @@ if test "${with_tcp}" = "yes"; then
|
|||
|
||||
$as_echo "#define TCP 1" >>confdefs.h
|
||||
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/tcp.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} tcp.${OBJEXT}"
|
||||
|
||||
|
||||
LSP_FEATURES="(cons :wants-sockets ${LSP_FEATURES})"
|
||||
|
|
@ -9692,13 +9693,13 @@ $as_echo "#define ECL_UNICODE 21" >>confdefs.h
|
|||
|
||||
CHAR_CODE_LIMIT=1114112
|
||||
ECL_CHARACTER=$ECL_INT32_T
|
||||
EXTRA_OBJS="$EXTRA_OBJS c/unicode/ucd.o c/unicode/ucd-0000.o c/unicode/ucd-0016.o c/unicode/ucd-0032.o c/unicode/ucd-0048.o c/unicode/ucd-0064.o c/unicode/ucd-0080.o c/unicode/ucd-0096.o"
|
||||
EXTRA_OBJS="$EXTRA_OBJS unicode/ucd.o unicode/ucd-0000.o unicode/ucd-0016.o unicode/ucd-0032.o unicode/ucd-0048.o unicode/ucd-0064.o unicode/ucd-0080.o unicode/ucd-0096.o"
|
||||
fi
|
||||
if test "${with_unicode_names}" = "yes"; then
|
||||
|
||||
$as_echo "#define ECL_UNICODE_NAMES 1" >>confdefs.h
|
||||
|
||||
EXTRA_OBJS="$EXTRA_OBJS c/unicode/ucd_names_char.o c/unicode/ucd_names_codes.o c/unicode/ucd_names_pair.o c/unicode/ucd_names_str.o"
|
||||
EXTRA_OBJS="$EXTRA_OBJS unicode/ucd_names_char.o unicode/ucd_names_codes.o unicode/ucd_names_pair.o unicode/ucd_names_str.o"
|
||||
fi
|
||||
else
|
||||
CHAR_CODE_LIMIT=256
|
||||
|
|
@ -9726,7 +9727,7 @@ $as_echo "#define ECL_RELATIVE_PACKAGE_NAMES 1" >>confdefs.h
|
|||
|
||||
fi
|
||||
|
||||
ac_config_files="$ac_config_files bare.lsp lsp/load.lsp clos/load.lsp cmp/load.lsp ../Makefile Makefile doc/Makefile doc/ecl.man doc/ecl-config.man ecl/configpre.h:h/config.h.in ecl/configpre-int.h:h/config-internal.h.in bin/ecl-config.pre:util/ecl-config lsp/config.lsp:lsp/config.lsp.in compile.pre:compile.lsp.in cmp/cmpdefs.pre:cmp/cmpdefs.lsp tests/config.lsp tests/Makefile"
|
||||
ac_config_files="$ac_config_files bare.lsp lsp/load.lsp clos/load.lsp cmp/load.lsp ../Makefile Makefile c/Makefile doc/Makefile doc/ecl.man doc/ecl-config.man ecl/configpre.h:h/config.h.in ecl/configpre-int.h:h/config-internal.h.in bin/ecl-config.pre:util/ecl-config lsp/config.lsp:lsp/config.lsp.in compile.pre:compile.lsp.in cmp/cmpdefs.pre:cmp/cmpdefs.lsp tests/config.lsp tests/Makefile"
|
||||
|
||||
|
||||
ac_config_headers="$ac_config_headers ecl/config.h:ecl/configpre.h"
|
||||
|
|
@ -10430,6 +10431,7 @@ do
|
|||
"cmp/load.lsp") CONFIG_FILES="$CONFIG_FILES cmp/load.lsp" ;;
|
||||
"../Makefile") CONFIG_FILES="$CONFIG_FILES ../Makefile" ;;
|
||||
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
|
||||
"c/Makefile") CONFIG_FILES="$CONFIG_FILES c/Makefile" ;;
|
||||
"doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
|
||||
"doc/ecl.man") CONFIG_FILES="$CONFIG_FILES doc/ecl.man" ;;
|
||||
"doc/ecl-config.man") CONFIG_FILES="$CONFIG_FILES doc/ecl-config.man" ;;
|
||||
|
|
|
|||
|
|
@ -329,7 +329,7 @@ AC_SUBST(SHARED_LDFLAGS) dnl Flags for shared libraries linker
|
|||
AC_SUBST(BUNDLE_LDFLAGS) dnl Flags for FASL files linker
|
||||
AC_SUBST(EXTRA_OBJS) dnl Extra *.o files to be compiled into libecl.a
|
||||
AC_SUBST(TARGETS, ['bin/ecl$(EXE)'])dnl Versions of ECL to be built
|
||||
AC_SUBST(SUBDIRS, []) dnl Subdirectories that make should process
|
||||
AC_SUBST(SUBDIRS, [c]) dnl Subdirectories that make should process
|
||||
AC_SUBST(LIBRARIES, []) dnl GMP, Boehm's GC, etc
|
||||
AC_SUBST(LSP_LIBRARIES) dnl Libraries produced by lisp translator
|
||||
AC_SUBST(LSP_FEATURES, ['*features*']) dnl Symbols to add to *FEATURES* for conditional compilation
|
||||
|
|
@ -421,7 +421,7 @@ fi
|
|||
dnl ----------------------------------------------------------------------
|
||||
dnl Configure local GMP if needed
|
||||
AC_SUBST(ECL_GMP_HEADER)
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/big.o"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} big.o"
|
||||
if test "x${with_system_gmp}" = "xno" ; then
|
||||
AC_MSG_NOTICE(Configuring included GMP library:)
|
||||
test -d gmp && rm -rf gmp
|
||||
|
|
@ -809,7 +809,7 @@ if test "${with_tcp}" = "builtin"; then
|
|||
fi
|
||||
if test "${with_tcp}" = "yes"; then
|
||||
AC_DEFINE(TCP, [1], [Network streams])
|
||||
EXTRA_OBJS="${EXTRA_OBJS} c/tcp.${OBJEXT}"
|
||||
EXTRA_OBJS="${EXTRA_OBJS} tcp.${OBJEXT}"
|
||||
ECL_ADD_LISP_MODULE([sockets])
|
||||
LIBS="${LIBS} ${TCPLIBS}"
|
||||
fi
|
||||
|
|
@ -879,11 +879,11 @@ if test "x${enable_unicode}" != "xno"; then
|
|||
AC_DEFINE([ECL_UNICODE], [21], [Support for Unicode])
|
||||
CHAR_CODE_LIMIT=1114112
|
||||
ECL_CHARACTER=$ECL_INT32_T
|
||||
EXTRA_OBJS="$EXTRA_OBJS c/unicode/ucd.o c/unicode/ucd-0000.o c/unicode/ucd-0016.o c/unicode/ucd-0032.o c/unicode/ucd-0048.o c/unicode/ucd-0064.o c/unicode/ucd-0080.o c/unicode/ucd-0096.o"
|
||||
EXTRA_OBJS="$EXTRA_OBJS unicode/ucd.o unicode/ucd-0000.o unicode/ucd-0016.o unicode/ucd-0032.o unicode/ucd-0048.o unicode/ucd-0064.o unicode/ucd-0080.o unicode/ucd-0096.o"
|
||||
fi
|
||||
if test "${with_unicode_names}" = "yes"; then
|
||||
AC_DEFINE([ECL_UNICODE_NAMES], [1], [Link in the database of Unicode names])
|
||||
EXTRA_OBJS="$EXTRA_OBJS c/unicode/ucd_names_char.o c/unicode/ucd_names_codes.o c/unicode/ucd_names_pair.o c/unicode/ucd_names_str.o"
|
||||
EXTRA_OBJS="$EXTRA_OBJS unicode/ucd_names_char.o unicode/ucd_names_codes.o unicode/ucd_names_pair.o unicode/ucd_names_str.o"
|
||||
fi
|
||||
else
|
||||
CHAR_CODE_LIMIT=256
|
||||
|
|
@ -916,6 +916,7 @@ AC_CONFIG_FILES([
|
|||
cmp/load.lsp
|
||||
../Makefile
|
||||
Makefile
|
||||
c/Makefile
|
||||
doc/Makefile
|
||||
doc/ecl.man
|
||||
doc/ecl-config.man
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue