No longer used

This commit is contained in:
jjgarcia 2005-11-08 12:48:17 +00:00
parent 4488f3b900
commit 504a8c6e62
6 changed files with 0 additions and 1589 deletions

View file

@ -1,317 +0,0 @@
#
# Makefile for ECL
#
top_srcdir= ..\src
srcdir = ..\src
# =============================================================
# ECL configuration
# <BEGIN>
SHORT_SITE_NAME =
LONG_SITE_NAME =
ECL_VERSION = 0.9f
ARCHITECTURE = PENTIUM4
MACHINE_INSTANCE = localhost
MACHINE =
SOFTWARE_TYPE = NT
SOFTWARE_VERSION = 5.0
THEHOST = win32
# Define here the processor type to compile GMP library
# with maximum optimization. Possible values are:
# gc -> generic implementation
# p0 -> Pentium processor
# p3 -> Pentium III processor
# p4 -> Pentium IV processor
GMP_TYPE = gc
# Set it to non-empty to include Win32 thread support
ECL_THREADS =
# Add the extensions to include in the build process. Current
# extensions are: asdf
ECL_MODULES = asdf
# <END> (ECL configuration)
# =============================================================
TAR_DIR = %%CD%%\ecl-$(ECL_VERSION)
# Programs used by "make":
#
CC = cl
CFLAGS = /MD /DGC_NOT_DLL
LIBS = eclgc.lib eclgmp.lib user32.lib ws2_32.lib
LDFLAGS = -MD -Zi
RM = del
RMDIR = rmdir /Q /S
MKDIR = mkdir
EXE = .exe
CP = copy /Y
MV = move /Y
MSDEV = msdev
MKNSI = makensis.exe
# ==================== Where To Install Things ====================
# The default location for installation. Everything is placed in
# subdirectories of this directory. The default values for many of
# the variables below are expressed in terms of this one, so you may
# not need to change them. This defaults to /usr/local.
prefix=D:\Software\ECL
exec_prefix=$(prefix)
bindir=$(prefix)\bin
libdir=$(prefix)\lib\ecl
# Programs used by "make install":
#
SHELL = @SHELL@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_DATA = @INSTALL_DATA@
mkinstalldirs = $(SHELL) $(top_srcdir)/gc/mkinstalldirs
# Files
#
SUBDIR = c gc gmp
LIBRARIES =
LSP_LIBRARIES = cmp.fas clx.fas sockets.fas sysfun.lsp
TARGETS = ecl2$(EXE)
DEF = ecl.def
# Additional configuration for thread support
#
!if "$(ECL_THREADS)" == ""
ENV_EXPORT = cl_env,DATA
!else
ENV_EXPORT = ecl_process_env
CFLAGS = $(CFLAGS) -DECL_THREADS
DEF = ecl-threads.def
!endif
# Build rules
#
all: $(TARGETS) doc ecl-config.bat
.PHONY: all
%Makefile: $(srcdir)/%Makefile.in config.status
./config.status
$(TARGETS): ecl_min$(EXE) compile.lsp sysfun.lsp
.\ecl_min < compile.lsp
ecl-static.lib: $(TARGETS)
link -lib -out:$@ eclmin.lib c\all_symbols2.obj lsp.lib eclgmp.lib eclgc.lib
ecl_min$(EXE): $(LIBRARIES) eclmin.lib
$(CC) $(LDFLAGS) /Fe$@ cinit.obj c\all_symbols.obj eclmin.lib $(LIBS)
.gdbinit: $(srcdir)\util\gdbinit
$(CP) $(srcdir)\util\gdbinit $@
lsp/config.lsp: $(srcdir)/lsp/config.lsp.in Makefile.msvc6
if not exist lsp $(MKDIR) lsp
sed -e "s,@ecldir@,$(libdir:\=/),g" \
-e "s,@SHORT_SITE_NAME@,$(SHORT_SITE_NAME),g" \
-e "s,@LONG_SITE_NAME@,$(LONG_SITE_NAME),g" \
-e "s,@PACKAGE_VERSION@,$(ECL_VERSION),g" \
-e "s,@ARCHITECTURE@,$(ARCHITECTURE),g" \
-e "s,@MACHINE_INSTANCE@,$(MACHINE_INSTANCE),g" \
-e "s,@MACHINE_VERSION@,$(MACHINE),g" \
-e "s,@SOFTWARE_TYPE@,$(SOFTWARE_TYPE),g" \
-e "s,@SOFTWARE_VERSION@,$(SOFTWARE_VERSION),g" \
-e "s,@thehost@,$(THEHOST),g" \
< $(srcdir)\lsp\config.lsp.in > lsp\config.lsp
compile.lsp: bare.lsp $(srcdir)/compile.lsp.in Makefile.msvc6
sed -e "s,@ecldir@,$(libdir:\=/),g" \
-e "s,@true_srcdir@,$(srcdir:\=/),g" \
-e "s,@true_builddir@,$(MAKEDIR:\=/),g" \
-e "s,@CFLAGS@,$(CFLAGS),g" \
-e "s,@ECL_CFLAGS@,,g" \
-e "s,@CPPFLAGS@,,g" \
-e "s,@LDRPATH@,,g" \
-e "s,@LDFLAGS@,/MD /link /LIBPATH:~S,g" \
-e "s,@SHARED_LDFLAGS@,/LDd,g" \
-e "s,@BUNDLE_LDFLAGS@,/LDd,g" \
-e "s,@CLIBS@,user32.lib ws2_32.lib,g" \
-e "s,@STATICLIBS@,eclgmp.lib eclgc.lib,g" \
-e "s,@LIBS@,user32.lib ws2_32.lib,g" \
-e "s,@CORE_LIBS@,,g" \
-e "s,@FASL_LIBS@,,g" \
-e "s,@OBJEXT@,obj,g" \
-e "s,@SHAREDPREFIX@,,g" \
-e "s,@SHAREDEXT@,lib,g" \
-e "s,@LIBPREFIX@,,g" \
-e "s,@LIBEXT@,lib,g" \
-e "s,@EXEEXT@,.exe,g" \
-e "s,@LDINSTALLNAME@,,g" \
-e "s,@DEF@,$(DEF),g" \
-e "s,@ECL_MODULES@,$(ECL_MODULES),g" \
-e "s,@RANLIB@,ranlib,g" \
< $(srcdir)\compile.lsp.in > compile.lsp
bare.lsp: $(srcdir)/bare.lsp.in lsp/load.lsp clos/load.lsp cmp/load.lsp cmp/cmpcfg.lsp
sed -e "s,@true_srcdir@,$(srcdir:\=/),g" \
-e "s,@true_builddir@,$(MAKEDIR:\=/),g" < $(srcdir)\bare.lsp.in > bare.lsp
lsp/load.lsp: $(srcdir)/lsp/load.lsp.in
$(CP) $(srcdir)\lsp\load.lsp.in lsp\load.lsp
clos/load.lsp: $(srcdir)/clos/load.lsp.in
if not exist clos $(MKDIR) clos
$(CP) $(srcdir)\clos\load.lsp.in clos\load.lsp
cmp/load.lsp: $(srcdir)/cmp/load.lsp.in
if not exist cmp $(MKDIR) cmp
$(CP) $(srcdir)\cmp\load.lsp.in cmp\load.lsp
cmp/cmpcfg.lsp: $(srcdir)/cmp/cmpcfg.lsp.in Makefile.msvc6
sed -e "s,@ECL_CC@,$(CC),g" \
-e "s,@CFLAGS@,$(CFLAGS),g" \
-e "s,@ECL_CFLAGS@,,g" \
-e "s,@CPPFLAGS@,,g" \
-e "s,@LDRPATH@,,g" \
-e "s,@LDFLAGS@,/MD /link /LIBPATH:~S,g" \
-e "s,@SHARED_LDFLAGS@,/LDd,g" \
-e "s,@BUNDLE_LDFLAGS@,/LDd,g" \
-e "s,@CLIBS@,user32.lib ws2_32.lib,g" \
-e "s,@STATICLIBS@,eclgmp.lib eclgc.lib,g" \
-e "s,@OBJEXT@,obj,g" \
-e "s,@SHAREDPREFIX@,,g" \
-e "s,@SHAREDEXT@,dll,g" \
-e "s,@LIBPREFIX@,,g" \
-e "s,@LIBEXT@,lib,g" \
-e "s,@EXEEXT@,.exe,g" \
< $(srcdir)\cmp\cmpcfg.lsp.in > cmp\cmpcfg.lsp
ecl-config.bat: util\ecl-config.bat Makefile.msvc6
sed -e "s,~A,$(libdir:\=/),;s,~\*,," \
-e "s,@ECL_CFLAGS@,$(CFLAGS),g" \
-e "s,@LDFLAGS@,,g" \
-e "s,@CLIBS@,,g" \
-e "s,@libdir@,$(libdir:\=/)," \
-e "s,@includedir@,$(libdir:\=/)/h," util\ecl-config.bat > ecl-config.bat
eclmin.lib: eclgmp.lib eclgc.lib lsp/config.lsp
cd c
$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)"
cd ..
eclgc.lib:
cd gc
$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" gc.lib
$(CP) gc.lib ..\eclgc.lib
cd ..
for %h in (gc.h gc_local_alloc.h gc_pthread_redirects.h \
gc_config_macros.h leak_detector.h gc_typed.h) \
do $(CP) $(srcdir)\gc\include\%h h\%h
eclgmp.lib:
cd gmp
$(MAKE) -f Makefile.msvc6 "MPN_TYPE = $(GMP_TYPE)"
$(CP) gmp.lib ..\eclgmp.lib
$(CP) gmp.h ..\h\gmp.h
cd ..
sysfun.lsp:
$(CP) $(srcdir)\cmp\sysfun.lsp .\
rt.lisp:
$(CP) $(srcdir)\..\contrib\rt\rt.lisp .\
install: install-base
for %h in (gc.h gc_local_alloc.h gc_pthread_redirects.h \
gc_config_macros.h leak_detector.h gc_typed.h) \
do $(CP) h\%h $(libdir)\h
$(CP) h\gmp.h $(libdir)\h\gmp.h
cd c
$(MAKE) -f Makefile.msvc6 install "prefix=$(prefix)"
cd ..\doc
$(MAKE) -f Makefile.msvc6 install "prefix=$(prefix)"
install-base:
IF NOT EXIST $(bindir) $(MKDIR) $(bindir)
IF NOT EXIST $(libdir)\h $(MKDIR) $(libdir)\h
for %i in ($(TARGETS) ecl.dll) do $(CP) %i $(bindir)\%i
IF EXIST $(bindir)\ecl2$(EXE) $(MV) $(bindir)\ecl2$(EXE) $(bindir)\ecl$(EXE)
$(CP) ecl-config.bat $(bindir)\ecl-config.bat
for %i in ($(LSP_LIBRARIES) $(LIBRARIES) c\dpp.exe help.doc ecl.lib) do $(CP) %i $(libdir)
for %i in ($(ECL_MODULES)) do $(CP) %i.fas $(libdir)
for %i in (ecl-static.lib) do IF EXIST %i $(CP) %i $(libdir)
$(CP) h\config.h $(libdir)\h
flatinstall:
$(MAKE) -f Makefile.msvc6 bindir=$(prefix) libdir=$(prefix) install-base
cd c
$(MAKE) -f Makefile.msvc6 prefix=$(prefix) flatinstall
cd ..\doc
$(MAKE) -f Makefile.msvc6 prefix=$(prefix) flatinstall
cd ..
windows-nsi:
IF EXIST $(TAR_DIR) $(RMDIR) $(TAR_DIR)
$(MKDIR) $(TAR_DIR)
$(MAKE) -f Makefile.msvc6 flatinstall prefix=$(TAR_DIR)
util\ecl_nsi.bat %%CD%%\$(srcdir)\util\ecl.nsi $(TAR_DIR)
$(MKNSI) $(TAR_DIR)/ecl.nsi
$(MV) $(TAR_DIR)\Setup.exe ecl-$(ECL_VERSION).exe
$(RMDIR) $(TAR_DIR)
uninstall:
for i in $(TARGETS) ecl-config; do rm -rf $(bindir)/$$i; done
rm -rf $(libdir)
cd doc; $(MAKE) uninstall
doc: $(TARGETS)
cd doc
$(MAKE) -f Makefile.msvc6
cd ..
clean: clean_ecl clean_lisp clean_doc
-$(RM) .gdbinit
cd gc
-$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean
cd ..
-for %h in (gc.h gc_local_alloc.h gc_pthread_redirects.h \
gc_config_macros.h leak_detector.h gc_typed.h) \
do $(RM) h\%h
cd gmp
$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean
cd ..
-$(RM) h\gmp.h
clean_ecl:
-for %i in (eclgc.lib eclgmp.lib lsp\config.lsp compile.lsp bare.lsp \
lsp\load.lsp clos\load.lsp cmp\load.lsp cmp\cmpcfg.lsp \
ecl.lib ecl.dll ecl_min$(EXE) eclmin.lib help.doc sysfun.lsp \
$(TARGETS) *.exp *.ilk *.pdb *.c *.obj ecl-config.bat ecl-static.lib) \
do $(RM) %i
cd c
-$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean
cd ..
clean_lisp:
-for %i in (lsp cmp clos clx tk $(ECL_MODULES) sockets) do for %k in (%i.lib %i.fas %i.ilk %i.c %i.obj %i.pdb) do $(RM) %k
-for %i in (lsp cmp clos clx tk ext) do $(RMDIR) %i
-$(RM) help.doc
clean_doc:
cd doc
-$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean
cd ..
distclean: clean
realclean: distclean
test1:
cd c; $(MAKE)
$(MAKE) ecl_min
$(MAKE) ecl
cd tests; $(MAKE)
diff tests tests2
test2:
$(MAKE) clean_lisp
cd c; $(MAKE)
$(MAKE) ecl_min
$(RM) ecl
$(MAKE) ecl
for i in lsp clos cmp; do diff --exclude=\*.o $$i old/$$i; done
test3:
-mkdir stage2
cp -rf lsp clos cmp stage2
-for i in lsp cmp clos clx tk; do test -f lib$$i.a && mv lib$$i.a stage2; done
$(MAKE) clean_lisp
./ecl < compile.lsp
-for i in lsp clos cmp clx tk; do test -d $$i && diff --exclude=\*.o $$i stage2/$$i; done | less
test:
$(MAKE) -C tests
$(MAKE) -C ansi-tests > ansi-tests/log
#-(diff tests ~/src/tests; diff --exclude log ansi-tests ~/src/ansi-tests) | less

View file

@ -1,144 +0,0 @@
#
# Makefile for ECL core library
#
top_srcdir = ..\..\src
srcdir = ..\..\src\c
!if "$(ECL_THREADS)" != ""
THREADS_OBJ= threads_win32.obj
THREADS_FLAGS= -DECL_THREADS -DGC_WIN32_THREADS
!else
THREADS_OBJ=
THREADS_FLAGS=
!endif
# Programs used by "make":
#
TRUE_CC = cl
CC = cl
CFLAGS = -c -MD -Zi -I./ -I$(srcdir) -I$(HDIR) -I../h -I$(top_srcdir)/gc/include -DHAVE_ISATTY $(THREADS_FLAGS) -DGC_NOT_DLL
# -Wall -W -Wfloat-equal -Wundef -Wendif-labels -Wpointer-arith -Wcast-align \
# -Wwrite-strings -Wconversion -Wsign-compare -Wmissing-prototypes -Wredundant-decls \
# -Wunreachable-code -Winline
DEFS = $(THREADS_FLAGS)
SHELL = /bin/sh
RM = del
CP = copy /Y
MV = move /Y
LINK = link
EXE = .exe
DPP = .\dpp$(EXE)
# Data for installation
#
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
prefix=@prefix@
exec_prefix=$(prefix)
libdir=$(prefix)\lib\ecl
# Files
HDIR = $(top_srcdir)\h
HFILES = ..\h\config.h $(HDIR)\ecl.h $(HDIR)\ecl-cmp.h\
$(HDIR)\object.h $(HDIR)\cs.h $(HDIR)\stacks.h\
$(HDIR)\external.h $(HDIR)\eval.h\
$(HDIR)\number.h $(HDIR)\page.h $(HDIR)\unify.h\
$(HDIR)\lwp.h
OBJS = main.obj symbol.obj package.obj list.obj\
apply.obj eval.obj interpreter.obj compiler.obj disassembler.obj \
instance.obj gfun.obj reference.obj character.obj\
file.obj read.obj print.obj error.obj string.obj cfun.obj\
typespec.obj assignment.obj \
predicate.obj big.obj number.obj\
num_pred.obj num_comp.obj num_arith.obj num_sfun.obj num_co.obj\
num_log.obj num_rand.obj array.obj sequence.obj cmpaux.obj\
macros.obj backq.obj stacks.obj \
time.obj unixint.obj\
mapfun.obj multival.obj hash.obj format.obj pathname.obj\
structure.obj load.obj unixfsys.obj unixsys.obj \
ffi.obj alloc_2.obj tcp.obj $(THREADS_OBJ)
all: $(DPP) external.h ..\eclmin.lib ..\cinit.obj
.SUFFIXES: .obj .c .d
{$(srcdir:\=/)}.d{}.c:
$(DPP) $< $@
#.d.c:
# $(DPP) $< $@
.c.obj:
$(CC) $(CFLAGS) -o $@ $<
.PHONY: all
#
# When compiling the library itself, we have to remove the dllimport
# declarations, because the variables that they mark are in the
# in the library and can be referenced without indirection.
#
external.h: $(top_srcdir)/h/external.h Makefile.msvc6
sed -e "s,__declspec(dllimport),,g" \
$(top_srcdir)\h\external.h > $@
install: $(HFILES)
for %i in ($(HFILES)) do $(CP) %i $(libdir)\h\
sed -e "/-CUT-/,$$d" ..\h\config.h > $(libdir)\h\config-install.h
$(RM) $(libdir)\h\config.h
$(MV) $(libdir)\h\config-install.h $(libdir)\h\config.h
flatinstall: $(HFILES)
for %i in ($(HFILES)) do $(CP) %i $(prefix)\h\
sed -e "/-CUT-/,$$d" ..\h\config.h > $(prefix)\h\config-install.h
for %h in (..\h\*.h) do $(CP) %h $(prefix)\h\
$(RM) $(prefix)\h\config.h
$(MV) $(prefix)\h\config-install.h $(prefix)\h\config.h
..\eclmin.lib: $(OBJS:.obj=.c) all_symbols.c $(OBJS) all_symbols.obj all_symbols2.obj
-$(RM) $@
$(LINK) -lib -out:$@ $(OBJS)
clean:
-for %f in (..\h\config.h dpp dpp.obj $(DPP) external.h \
..\eclmin.lib ..\cinit.obj cinit.c \
symbols_list2.h) \
do $(RM) %f
-for %f in ($(OBJS:.obj=.c) all_symbols.c) do $(RM) %f
-for %f in ($(OBJS) all_symbols.obj all_symbols2.obj) do $(RM) %f
-$(RM) *.pdb
# Build rules
$(DPP): $(srcdir)/dpp.c symbols_list2.h ../h/config.h
$(TRUE_CC) -I../h -I./ -I$(HDIR) $(DEFS) $(srcdir)/dpp.c -o $@
symbols_list2.h: $(srcdir)/symbols_list.h
sed -e "s%{\([A-Z ]*.*\".*\"\),[^,]*,[ ]*NULL,.*}%{\1,NULL}%g" \
-e "s%{\([A-Z ]*.*\".*\"\),[^,]*,[ ]*\([^,]*\),.*}%{\1,\"\2\"}%g" \
-e "s%{NULL.*%{NULL,NULL}};%" $(srcdir)\symbols_list.h > $@
../h/config.h: ../h/config.h.msvc6
$(CP) ..\h\config.h.msvc6 ..\h\config.h
#
# GCC might break this code
#
gbc.o: gbc.c $(HFILES)
$(CC) $(CFLAGS) -O0 gbc.c -o $@
#
# This reduces the overhead of jumping to other functions
#
apply.o: apply.c $(HFILES) $(HDIR)/cs.h
$(CC) $(CFLAGS) apply.c -o $@
#
# These files are interrelated
#
all_symbols.obj: all_symbols.c
$(CC) $(CFLAGS) -Fo$@ -I./ all_symbols.c
all_symbols2.obj: all_symbols.c
$(CC) $(CFLAGS) -DECL_FINAL -Fo$@ -I./ all_symbols.c
#
# This is in another directory
#
../cinit.obj: cinit.c
$(CC) $(CFLAGS) -I./ -o cinit.obj cinit.c
$(MV) cinit.obj ..\

View file

@ -1,162 +0,0 @@
top_srcdir= ..\..\src
srcdir = ..\..\src\doc
prefix=@prefix@
exec_prefix=$(prefix)\bin
infodir = $(prefix)\doc\info
mandir=$(prefix)\doc\man
docdir=$(prefix)\doc
manext=1
INFOEXT = info
SHELL = cmd.exe
INSTALL = ..\install.bat
INSTALL_PROGRAM = $(INSTALL)
INSTALL_DATA = $(INSTALL)
INSTALL_INFO = $(INSTALL)
mkinstalldirs = $(SHELL) $(top_srcdir)/gc/mkinstalldirs.bat
INFO_FILES = ecl.$(INFOEXT) ecldev.$(INFOEXT)
HTML_FILES = index.html license.html lgpl.html news.html benchmark.html \
install.html download.html
RM = erase
RMDIR = rmdir /S /Q
MKDIR = mkdir
CP = copy /Y
ECL_VERSION=0.9d
FILTER = sed "s,@PACKAGE_VERSION@,$(ECL_VERSION),g"
ECL = ../ecl
all: $(INFO_FILES) $(HTML_FILES) developers_manual user_manual clx_manual
ecl.dvi: $(srcdir)/user.txi $(srcdir)/macros.txi clisp.sty ecl.sty
tex $(srcdir)/user.txi
ecldev.dvi: $(srcdir)/devel.txi $(srcdir)/macros.txi clisp.sty ecl.sty
tex $(srcdir)/devel.txi
clx.dvi: clx.texinfo
tex clx.texinfo
ecl.ps: ecl.dvi $(srcdir)/macros.txi
dvips -o $@ ecl.dvi
ecldev.ps: ecldev.dvi $(srcdir)/macros.txi
dvips -o $@ ecldev.dvi
clx.ps: clx.dvi
dvips -o $@ clx.dvi
install: all
IF NOT EXIST $(docdir) $(MKDIR) $(docdir)
for %i in (Copyright LGPL) do $(CP) $(top_srcdir)\..\%i $(docdir)
for %i in ($(HTML_FILES)) do $(CP) %i $(docdir)
IF NOT EXIST $(docdir)\ecldev $(MKDIR) $(docdir)\ecldev
for %i in (ecldev\*) do $(CP) %i $(docdir)\ecldev
IF NOT EXIST $(docdir)\ecl $(MKDIR) $(docdir)\ecl
for %i in (ecl\*) do $(CP) %i $(docdir)\ecl
IF NOT EXIST $(docdir)\clx $(MKDIR) $(docdir)\clx
for %i in (clx\*) do $(CP) %i $(docdir)\clx
flatinstall: all
IF NOT EXIST $(docdir) $(MKDIR) $(docdir)
for %i in (Copyright LGPL) do $(CP) $(top_srcdir)\..\%i $(docdir)
for %i in ($(HTML_FILES)) do $(CP) %i $(docdir)
IF NOT EXIST $(docdir)\ecldev $(MKDIR) $(docdir)\ecldev
for %i in (ecldev\*) do $(CP) %i $(docdir)\ecldev
IF NOT EXIST $(docdir)\ecl $(MKDIR) $(docdir)\ecl
for %i in (ecl\*) do $(CP) %i $(docdir)\ecl
IF NOT EXIST $(docdir)\clx $(MKDIR) $(docdir)\clx
for %i in (clx\*) do $(CP) %i $(docdir)\clx
uninstall:
for k in $(INFO_FILES); do \
rm $$k; \
if [ -x $(INSTALL_INFO) ]; then \
$(INSTALL_INFO) --delete $$k; \
fi; \
done
rm -r $(infodir)/ecl.$(INFOEXT) $(infodir)/ecldev.$(INFOEXT); \
rm $(mandir)/man$(manext)/ecl.$(manext)
head2: developers_manual user_manual clx_manual $(srcdir)/head
IF EXIST ecl\index.html ( \
sed -e "s,ecl/user.html,ecl/index.html,g" \
-e "s,ecldev/devel.html,ecldev/index.html,g" \
$(srcdir)/head > head2 \
) ELSE ( \
copy /y $(srcdir)/head head2 \
)
ecl.info.gz: ecl.info
gzip < ecl.info > ecl.info.gz
ecldev.info.gz: ecldev.info
gzip < ecldev.info > ecldev.info.gz
clx.info.gz: clx.info
gzip < clx.info > clx.info.gz
ecl.info: $(srcdir)/user.txi $(srcdir)/macros.txi
makeinfo -I $(srcdir) --no-split $(srcdir)/user.txi
ecldev.info: $(srcdir)/devel.txi $(srcdir)/macros.txi
makeinfo -I $(srcdir) --no-split $(srcdir)/devel.txi
clx.info: clx.texinfo
makeinfo --no-split clx.texinfo
clx.texinfo: $(top_srcdir)/clx/manual/clx.texinfo
cp $(top_srcdir)/clx/manual/clx.texinfo .
download.html: $(srcdir)/download.in.html head2
( type head2 $(srcdir)\download.in.html $(srcdir)\end ) | $(FILTER) > $@
index.html: $(srcdir)/index.in.html head2
( type head2 $(srcdir)\index.in.html $(srcdir)\end ) | $(FILTER) > $@
install.html: $(srcdir)/install.in.html head2
( type head2 $(srcdir)\download.in.html $(srcdir)\end ) | $(FILTER) > $@
news.html: $(srcdir)/news.in.html head2
type head2 > html_tmp
sed -e "/^----.*$$/,$$d" $(srcdir)/news.in.html >> html_tmp
type $(srcdir)\..\..\ANNOUNCEMENT >> html_tmp
sed -e "1,/^----*$$/d" $(srcdir)/news.in.html >> html_tmp
type $(srcdir)\end >> html_tmp
$(FILTER) html_tmp > $@
$(RM) html_tmp
benchmark.html: $(srcdir)/benchmark.in.html ../gabriel/BENCHMARK head2
type head2 > html_tmp
type $(srcdir)\benchmark.in.html >> html_tmp
echo "<pre>" >> html_tmp
type ..\gabriel\BENCHMARK >> html_tmp
echo "</pre>" >> html_tmp
type $(srcdir)\end >> html_tmp
$(FILTER) html_tmp > $@
$(RM) html_tmp
../gabriel/BENCHMARK:
if not exist ..\gabriel $(MKDIR) ..\gabriel
echo "No benchmarks available" > ..\gabriel\BENCHMARK
license.html: $(top_srcdir)/../Copyright head2
type head2 > html_tmp
echo "<pre>" >> html_tmp
type $(top_srcdir)\..\Copyright >> html_tmp
echo "</pre>" >> html_tmp
type $(srcdir)\end >> html_tmp
$(FILTER) html_tmp > $@
$(RM) html_tmp
lgpl.html: $(top_srcdir)/../LGPL head2
type head2 > html_tmp
echo "<pre>" >> html_tmp
type $(top_srcdir)\..\LGPL >> html_tmp
echo "</pre>" >> html_tmp
type $(srcdir)\end >> html_tmp
$(FILTER) html_tmp > $@
$(RM) html_tmp
user_manual: $(srcdir)/user.txi $(srcdir)/macros.txi
echo "Producing ecl.html; ignore error messages."
IF NOT EXIST ecl MKDIR ecl
makeinfo -v -I $(srcdir) --html $(srcdir)/user.txi
echo > user_manual
developers_manual: $(srcdir)/devel.txi $(srcdir)/macros.txi
echo "Producing ecldev.html; ignore error messages."
IF NOT EXIST ecldev MKDIR ecldev
makeinfo -v -I $(srcdir) --html $(srcdir)/devel.txi
echo > developers_manual
clx_manual: $(srcdir)/../clx/manual/clx.texinfo
echo "Producing clx.html; ignore error messages."
IF NOT EXIST clx MKDIR clx
makeinfo -v --html $(srcdir)\..\clx\manual\clx.texinfo
echo > clx_manual
clean:
-for %i in (ecl ecldev clx ..\gabriel) do $(RMDIR) %i
-for %i in (ecl.info* ecldev.info* $(HTML_FILES) head2 user_manual developers_manual clx_manual ..\gabriel\BENCHMARK) do $(RM) %i

View file

@ -1,71 +0,0 @@
# Makefile for Windows NT. Assumes Microsoft compiler, and a single thread.
# DLLs are included in the root set under NT, but not under win32S.
# Use "nmake nodebug=1 all" for optimized versions of library, gctest and editor.
CPU= i386
!include <ntwin32.mak>
srcdir = ..\..\src\gc
!if "$(ECL_THREADS)" != ""
THREADS_OBJ= win32_threads.obj
THREADS_FLAGS= -DGC_WIN32_THREADS
!else
THREADS_OBJ=
THREADS_FLAGS=
!endif
OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj obj_map.obj blacklst.obj finalize.obj new_hblk.obj dbg_mlc.obj malloc.obj stubborn.obj dyn_load.obj typd_mlc.obj ptr_chck.obj gc_cpp.obj mallocx.obj $(THREADS_OBJ)
all: gctest.exe cord\de.exe test_cpp.exe
{$(srcdir)}.c{}.obj:
$(cc) /MD $(cdebug) $(cflags) $(cvars) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -D__STDC__ -DGC_NOT_DLL $(THREADS_FLAGS) $< /Fo$*.obj
.cpp.obj:
$(cc) /MD $(cdebug) $(cflags) $(cvars) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -DGC_NOT_DLL $(THREADS_FLAGS) $*.CPP /Fo$*.obj
$(OBJS) tests\test.obj: $(srcdir)\include\private\gc_priv.h $(srcdir)\include\private\gc_hdrs.h $(srcdir)\include\gc.h $(srcdir)\include\private\gcconfig.h $(srcdir)\include\private\gc_locks.h $(srcdir)\include\private\gc_pmark.h $(srcdir)\include\gc_mark.h
gc.lib: $(OBJS)
lib /MACHINE:i386 /out:gc.lib $(OBJS)
# The original NT SDK used lib32 instead of lib
gctest.exe: tests\test.obj gc.lib
# The following works for win32 debugging. For win32s debugging use debugtype:coff
# and add mapsympe line.
# This produces a "GUI" applications that opens no windows and writes to the log file
# "gc.log". This is done to make the result runnable under win32s.
$(link) -debug:full -debugtype:cv $(guiflags) -stack:131072 -out:$*.exe tests\test.obj $(guilibs) gc.lib
# mapsympe -n -o gctest.sym gctest.exe
cord\de_win.rbj: cord\de_win.res
cvtres -$(CPU) cord\de_win.res -o cord\de_win.rbj
cord\de.obj cord\de_win.obj: include\cord.h include\private\cord_pos.h cord\de_win.h cord\de_cmds.h
cord\de_win.res: cord\de_win.rc cord\de_win.h cord\de_cmds.h
$(rc) $(rcvars) -r -fo cord\de_win.res $(cvars) cord\de_win.rc
# Cord/de is a real win32 gui application.
cord\de.exe: cord\cordbscs.obj cord\cordxtra.obj cord\de.obj cord\de_win.obj cord\de_win.rbj gc.lib
$(link) -debug:full -debugtype:cv $(guiflags) -stack:16384 -out:cord\de.exe cord\cordbscs.obj cord\cordxtra.obj cord\de.obj cord\de_win.obj cord\de_win.rbj gc.lib $(guilibs)
gc_cpp.obj: $(srcdir)\include\gc_cpp.h $(srcdir)\include\gc.h
gc_cpp.cpp: $(srcdir)\gc_cpp.cc
copy $(srcdir)\gc_cpp.cc gc_cpp.cpp
test_cpp.cpp: tests\test_cpp.cc
copy tests\test_cpp.cc test_cpp.cpp
# This generates the C++ test executable. The executable expects
# a single numeric argument, which is the number of iterations.
# The output appears in the file "gc.log".
test_cpp.exe: test_cpp.obj include\gc_cpp.h include\gc.h gc.lib
$(link) -debug:full -debugtype:cv $(guiflags) -stack:16384 -out:test_cpp.exe test_cpp.obj gc.lib $(guilibs)
clean:
-del gc.lib
-for %i in ($(OBJS) gc_cpp.cpp) do erase %i

View file

@ -1,615 +0,0 @@
srcdir = ..\..\src\gmp
AUTO_SUBDIRS = mpn\generic mpf mpq mpz printf scanf
MPN_GC_SOURCES = \
mpn\generic\add.c \
mpn\generic\add_1.c \
mpn\generic\add_n.c \
mpn\generic\addmul_1.c \
mpn\generic\addsub_n.c \
mpn\generic\bdivmod.c \
mpn\generic\cmp.c \
mpn\generic\dc_divrem_n.c \
mpn\generic\dive_1.c \
mpn\generic\diveby3.c \
mpn\generic\divis.c \
mpn\generic\divrem.c \
mpn\generic\divrem_1.c \
mpn\generic\divrem_2.c \
mpn\generic\dump.c \
mpn\generic\fib2_ui.c \
mpn\generic\gcd.c \
mpn\generic\gcd_1.c \
mpn\generic\gcdext.c \
mpn\generic\get_str.c \
mpn\generic\hamdist.c \
mpn\generic\jacbase.c \
mpn\generic\lshift.c \
mpn\generic\mod_1.c \
mpn\generic\mod_34lsub1.c \
mpn\generic\mode1o.c \
mpn\generic\mul.c \
mpn\generic\mul_1.c \
mpn\generic\mul_basecase.c \
mpn\generic\mul_fft.c \
mpn\generic\mul_n.c \
mpn\generic\perfsqr.c \
mpn\generic\popcount.c \
mpn\generic\pow_1.c \
mpn\generic\pre_divrem_1.c \
mpn\generic\pre_mod_1.c \
mpn\generic\random.c \
mpn\generic\random2.c \
mpn\generic\rootrem.c \
mpn\generic\rshift.c \
mpn\generic\sb_divrem_mn.c \
mpn\generic\scan0.c \
mpn\generic\scan1.c \
mpn\generic\set_str.c \
mpn\generic\sizeinbase.c \
mpn\generic\sqr_basecase.c \
mpn\generic\sqrtrem.c \
mpn\generic\sub.c \
mpn\generic\sub_1.c \
mpn\generic\sub_n.c \
mpn\generic\submul_1.c \
mpn\generic\tdiv_qr.c \
mpn\mp_bases.c
MPN_P0_C_SOURCES = \
mpn\generic\add.c \
mpn\generic\add_1.c \
mpn\generic\addsub_n.c \
mpn\generic\bdivmod.c \
mpn\generic\cmp.c \
mpn\generic\dc_divrem_n.c \
mpn\generic\divis.c \
mpn\generic\divrem.c \
mpn\generic\divrem_2.c \
mpn\generic\dump.c \
mpn\generic\fib2_ui.c \
mpn\generic\gcd.c \
mpn\generic\gcd_1.c \
mpn\generic\gcdext.c \
mpn\generic\get_str.c \
mpn\generic\hamdist.c \
mpn\generic\jacbase.c \
mpn\generic\mode1o.c \
mpn\mp_bases.c \
mpn\generic\mul.c \
mpn\generic\mul_fft.c \
mpn\generic\mul_n.c \
mpn\generic\perfsqr.c \
mpn\generic\popcount.c \
mpn\generic\pow_1.c \
mpn\generic\pre_divrem_1.c \
mpn\generic\pre_mod_1.c \
mpn\generic\random.c \
mpn\generic\random2.c \
mpn\generic\rootrem.c \
mpn\generic\sb_divrem_mn.c \
mpn\generic\scan0.c \
mpn\generic\scan1.c \
mpn\generic\set_str.c \
mpn\generic\sizeinbase.c \
mpn\generic\sqr_basecase.c \
mpn\generic\sqrtrem.c \
mpn\generic\sub.c \
mpn\generic\sub_1.c \
mpn\generic\tdiv_qr.c
MPN_P0_ASM_SOURCES = \
mpn\x86i\umul.asm \
mpn\x86i\udiv.asm \
mpn\x86i\rshift.asm \
mpn\x86i\mul_basecase.asm \
mpn\x86i\mul_1.asm \
mpn\x86i\mod_34lsub1.asm \
mpn\x86i\mod_1.asm \
mpn\x86i\lshift.asm \
mpn\x86i\divrem_1.asm \
mpn\x86i\diveby3.asm \
mpn\x86i\dive_1.asm \
mpn\x86i\copyi.asm \
mpn\x86i\copyd.asm \
mpn\x86i\aorsmul_1.asm \
mpn\x86i\aors_n.asm
MPN_P3_C_SOURCES = \
mpn\generic\add.c \
mpn\generic\add_1.c \
mpn\generic\addsub_n.c \
mpn\generic\bdivmod.c \
mpn\generic\cmp.c \
mpn\generic\dc_divrem_n.c \
mpn\generic\divis.c \
mpn\generic\divrem.c \
mpn\generic\divrem_2.c \
mpn\generic\dump.c \
mpn\generic\fib2_ui.c \
mpn\generic\gcd.c \
mpn\generic\gcd_1.c \
mpn\generic\gcdext.c \
mpn\generic\get_str.c \
mpn\generic\jacbase.c \
mpn\mp_bases.c \
mpn\generic\mul.c \
mpn\generic\mul_fft.c \
mpn\generic\mul_n.c \
mpn\generic\perfsqr.c \
mpn\generic\pow_1.c \
mpn\generic\random.c \
mpn\generic\random2.c \
mpn\generic\rootrem.c \
mpn\generic\sb_divrem_mn.c \
mpn\generic\scan0.c \
mpn\generic\scan1.c \
mpn\generic\set_str.c \
mpn\generic\sizeinbase.c \
mpn\generic\sqrtrem.c \
mpn\generic\sub.c \
mpn\generic\sub_1.c \
mpn\generic\tdiv_qr.c
MPN_P3_ASM_SOURCES = \
mpn\x86i\umul.asm \
mpn\x86i\udiv.asm \
mpn\x86i\p6\sqr_basecase.asm \
mpn\x86i\mul_basecase.asm \
mpn\x86i\mul_1.asm \
mpn\x86i\p6\mode1o.asm \
mpn\x86i\mod_34lsub1.asm \
mpn\x86i\p6\mod_1.asm \
mpn\x86i\p6\diveby3.asm \
mpn\x86i\p6\dive_1.asm \
mpn\x86i\copyi.asm \
mpn\x86i\p6\copyd.asm \
mpn\x86i\p6\aorsmul_1.asm \
mpn\x86i\aors_n.asm \
mpn\x86i\p6\mmx\rshift.asm \
mpn\x86i\p6\p3mmx\popham.asm \
mpn\x86i\p6\mmx\lshift.asm \
mpn\x86i\p6\mmx\divrem_1.asm
MPN_P4_C_SOURCES = \
mpn\generic\add.c \
mpn\generic\add_1.c \
mpn\generic\addsub_n.c \
mpn\generic\bdivmod.c \
mpn\generic\cmp.c \
mpn\generic\dc_divrem_n.c \
mpn\generic\divis.c \
mpn\generic\divrem.c \
mpn\generic\divrem_2.c \
mpn\generic\dump.c \
mpn\generic\fib2_ui.c \
mpn\generic\gcd.c \
mpn\generic\gcd_1.c \
mpn\generic\gcdext.c \
mpn\generic\get_str.c \
mpn\generic\jacbase.c \
mpn\mp_bases.c \
mpn\generic\mul.c \
mpn\generic\mul_fft.c \
mpn\generic\mul_n.c \
mpn\generic\perfsqr.c \
mpn\generic\pow_1.c \
mpn\generic\pre_divrem_1.c \
mpn\generic\pre_mod_1.c \
mpn\generic\random.c \
mpn\generic\random2.c \
mpn\generic\rootrem.c \
mpn\generic\sb_divrem_mn.c \
mpn\generic\scan0.c \
mpn\generic\scan1.c \
mpn\generic\set_str.c \
mpn\generic\sizeinbase.c \
mpn\generic\sqrtrem.c \
mpn\generic\sub.c \
mpn\generic\sub_1.c \
mpn\generic\tdiv_qr.c
MPN_P4_ASM_SOURCES = \
mpn\x86i\umul.asm \
mpn\x86i\udiv.asm \
mpn\x86i\mod_1.asm \
mpn\x86i\divrem_1.asm \
mpn\x86i\pentium4\copyi.asm \
mpn\x86i\pentium4\copyd.asm \
mpn\x86i\pentium4\sse2\submul_1.asm \
mpn\x86i\pentium4\sse2\sub_n.asm \
mpn\x86i\pentium4\sse2\sqr_basecase.asm \
mpn\x86i\pentium4\sse2\mul_basecase.asm \
mpn\x86i\pentium4\sse2\mul_1.asm \
mpn\x86i\pentium4\sse2\mode1o.asm \
mpn\x86i\pentium4\sse2\mod_34lsub1.asm \
mpn\x86i\pentium4\sse2\diveby3.asm \
mpn\x86i\pentium4\sse2\dive_1.asm \
mpn\x86i\pentium4\sse2\addmul_1.asm \
mpn\x86i\pentium4\sse2\add_n.asm \
mpn\x86i\pentium4\mmx\rshift.asm \
mpn\x86i\pentium4\mmx\popham.asm \
mpn\x86i\pentium4\mmx\lshift.asm
MPF_SOURCES = \
mpf\abs.c \
mpf\add.c \
mpf\add_ui.c \
mpf\ceilfloor.c \
mpf\clear.c \
mpf\cmp.c \
mpf\cmp_d.c \
mpf\cmp_si.c \
mpf\cmp_ui.c \
mpf\div.c \
mpf\div_2exp.c \
mpf\div_ui.c \
mpf\dump.c \
mpf\eq.c \
mpf\fits_sint.c \
mpf\fits_slong.c \
mpf\fits_sshort.c \
mpf\fits_uint.c \
mpf\fits_ulong.c \
mpf\fits_ushort.c \
mpf\get_d.c \
mpf\get_d_2exp.c \
mpf\get_dfl_prec.c \
mpf\get_prc.c \
mpf\get_si.c \
mpf\get_str.c \
mpf\get_ui.c \
mpf\init.c \
mpf\init2.c \
mpf\inp_str.c \
mpf\int_p.c \
mpf\iset.c \
mpf\iset_d.c \
mpf\iset_si.c \
mpf\iset_str.c \
mpf\iset_ui.c \
mpf\mul.c \
mpf\mul_2exp.c \
mpf\mul_ui.c \
mpf\neg.c \
mpf\out_str.c \
mpf\pow_ui.c \
mpf\random2.c \
mpf\reldiff.c \
mpf\set.c \
mpf\set_d.c \
mpf\set_dfl_prec.c \
mpf\set_prc.c \
mpf\set_prc_raw.c \
mpf\set_q.c \
mpf\set_si.c \
mpf\set_str.c \
mpf\set_ui.c \
mpf\set_z.c \
mpf\size.c \
mpf\sqrt.c \
mpf\sqrt_ui.c \
mpf\sub.c \
mpf\sub_ui.c \
mpf\swap.c \
mpf\trunc.c \
mpf\ui_div.c \
mpf\ui_sub.c \
mpf\urandomb.c
MPQ_SOURCES = \
mpq\abs.c \
mpq\aors.c \
mpq\canonicalize.c \
mpq\clear.c \
mpq\cmp.c \
mpq\cmp_si.c \
mpq\cmp_ui.c \
mpq\div.c \
mpq\equal.c \
mpq\get_d.c \
mpq\get_den.c \
mpq\get_num.c \
mpq\get_str.c \
mpq\init.c \
mpq\inp_str.c \
mpq\inv.c \
mpq\md_2exp.c \
mpq\mul.c \
mpq\neg.c \
mpq\out_str.c \
mpq\set.c \
mpq\set_d.c \
mpq\set_den.c \
mpq\set_f.c \
mpq\set_num.c \
mpq\set_si.c \
mpq\set_str.c \
mpq\set_ui.c \
mpq\set_z.c \
mpq\swap.c
MPZ_SOURCES = \
mpz\abs.c \
mpz\add.c \
mpz\add_ui.c \
mpz\and.c \
mpz\aorsmul.c \
mpz\aorsmul_i.c \
mpz\array_init.c \
mpz\bin_ui.c \
mpz\bin_uiui.c \
mpz\cdiv_q.c \
mpz\cdiv_q_ui.c \
mpz\cdiv_qr.c \
mpz\cdiv_qr_ui.c \
mpz\cdiv_r.c \
mpz\cdiv_r_ui.c \
mpz\cdiv_ui.c \
mpz\cfdiv_q_2exp.c \
mpz\cfdiv_r_2exp.c \
mpz\clear.c \
mpz\clrbit.c \
mpz\cmp.c \
mpz\cmp_d.c \
mpz\cmp_si.c \
mpz\cmp_ui.c \
mpz\cmpabs.c \
mpz\cmpabs_d.c \
mpz\cmpabs_ui.c \
mpz\com.c \
mpz\cong.c \
mpz\cong_2exp.c \
mpz\cong_ui.c \
mpz\dive_ui.c \
mpz\divegcd.c \
mpz\divexact.c \
mpz\divis.c \
mpz\divis_2exp.c \
mpz\divis_ui.c \
mpz\dump.c \
mpz\export.c \
mpz\fac_ui.c \
mpz\fdiv_q.c \
mpz\fdiv_q_ui.c \
mpz\fdiv_qr.c \
mpz\fdiv_qr_ui.c \
mpz\fdiv_r.c \
mpz\fdiv_r_ui.c \
mpz\fdiv_ui.c \
mpz\fib2_ui.c \
mpz\fib_ui.c \
mpz\fits_sint.c \
mpz\fits_slong.c \
mpz\fits_sshort.c \
mpz\fits_uint.c \
mpz\fits_ulong.c \
mpz\fits_ushort.c \
mpz\gcd.c \
mpz\gcd_ui.c \
mpz\gcdext.c \
mpz\get_d.c \
mpz\get_d_2exp.c \
mpz\get_si.c \
mpz\get_str.c \
mpz\get_ui.c \
mpz\getlimbn.c \
mpz\hamdist.c \
mpz\import.c \
mpz\init.c \
mpz\init2.c \
mpz\inp_raw.c \
mpz\inp_str.c \
mpz\invert.c \
mpz\ior.c \
mpz\iset.c \
mpz\iset_d.c \
mpz\iset_si.c \
mpz\iset_str.c \
mpz\iset_ui.c \
mpz\jacobi.c \
mpz\kronsz.c \
mpz\kronuz.c \
mpz\kronzs.c \
mpz\kronzu.c \
mpz\lcm.c \
mpz\lcm_ui.c \
mpz\lucnum2_ui.c \
mpz\lucnum_ui.c \
mpz\millerrabin.c \
mpz\mod.c \
mpz\mul.c \
mpz\mul_2exp.c \
mpz\mul_si.c \
mpz\mul_ui.c \
mpz\n_pow_ui.c \
mpz\neg.c \
mpz\nextprime.c \
mpz\out_raw.c \
mpz\out_str.c \
mpz\perfpow.c \
mpz\perfsqr.c \
mpz\popcount.c \
mpz\pow_ui.c \
mpz\powm.c \
mpz\powm_ui.c \
mpz\pprime_p.c \
mpz\random.c \
mpz\random2.c \
mpz\realloc.c \
mpz\realloc2.c \
mpz\remove.c \
mpz\root.c \
mpz\rrandomb.c \
mpz\scan0.c \
mpz\scan1.c \
mpz\set.c \
mpz\set_d.c \
mpz\set_f.c \
mpz\set_q.c \
mpz\set_si.c \
mpz\set_str.c \
mpz\set_ui.c \
mpz\setbit.c \
mpz\size.c \
mpz\sizeinbase.c \
mpz\sqrt.c \
mpz\sqrtrem.c \
mpz\sub.c \
mpz\sub_ui.c \
mpz\swap.c \
mpz\tdiv_q.c \
mpz\tdiv_q_2exp.c \
mpz\tdiv_q_ui.c \
mpz\tdiv_qr.c \
mpz\tdiv_qr_ui.c \
mpz\tdiv_r.c \
mpz\tdiv_r_2exp.c \
mpz\tdiv_r_ui.c \
mpz\tdiv_ui.c \
mpz\tstbit.c \
mpz\ui_pow_ui.c \
mpz\ui_sub.c \
mpz\urandomb.c \
mpz\urandomm.c \
mpz\xor.c \
PRINTF_SOURCES = \
printf\asprintf.c \
printf\asprntffuns.c \
printf\doprnt.c \
printf\doprntf.c \
printf\doprnti.c \
printf\fprintf.c \
printf\obprintf.c \
printf\obprntffuns.c \
printf\obvprintf.c \
printf\printf.c \
printf\printffuns.c \
printf\repl-vsnprintf.c \
printf\snprintf.c \
printf\snprntffuns.c \
printf\sprintf.c \
printf\sprintffuns.c \
printf\vasprintf.c \
printf\vfprintf.c \
printf\vprintf.c \
printf\vsnprintf.c \
printf\vsprintf.c
SCANF_SOURCES = \
scanf\doscan.c \
scanf\fscanf.c \
scanf\fscanffuns.c \
scanf\scanf.c \
scanf\sscanf.c \
scanf\sscanffuns.c \
scanf\vfscanf.c \
scanf\vscanf.c \
scanf\vsscanf.c
GMP_SOURCES = \
ansi2knr.c \
assert.c \
compat.c \
errno.c \
extract-dbl.c \
insert-dbl.c \
memory.c \
mp_bpl.c \
mp_clz_tab.c \
mp_minv_tab.c \
mp_set_fns.c \
rand.c \
randclr.c \
randdef.c \
randlc.c \
randlc2s.c \
randlc2x.c \
randraw.c \
rands.c \
randsd.c \
randsdui.c \
version.c
MPN_GC_OBJS = $(MPN_GC_SOURCES:.c=.obj)
MPN_P0_OBJS = $(MPN_P0_ASM_SOURCES:.asm=.obj) $(MPN_P0_C_SOURCES:.c=.obj)
MPN_P3_OBJS = $(MPN_P3_ASM_SOURCES:.asm=.obj) $(MPN_P3_C_SOURCES:.c=.obj)
MPN_P4_OBJS = $(MPN_P4_ASM_SOURCES:.asm=.obj) $(MPN_P4_C_SOURCES:.c=.obj)
MPF_OBJS = $(MPF_SOURCES:.c=.obj)
MPQ_OBJS = $(MPQ_SOURCES:.c=.obj)
MPZ_OBJS = $(MPZ_SOURCES:.c=.obj)
PRINTF_OBJS = $(PRINTF_SOURCES:.c=.obj)
SCANF_OBJS = $(SCANF_SOURCES:.c=.obj)
GMP_OBJS = $(GMP_SOURCES:.c=.obj)
GMP_ALL_OBJS = $(MPF_OBJS) $(MPQ_OBJS) $(MPZ_OBJS) \
$(PRINTF_OBJS) $(SCANF_OBJS) $(GMP_OBJS)
MPN_TYPE = gc
all: gmp.lib
mpn_gc.lib: msvc-build $(MPN_GC_OBJS)
link -lib /NOLOGO /OUT:$@ $(MPN_GC_OBJS)
mpn_p0.lib: msvc-build $(MPN_P0_OBJS)
link -lib /NOLOGO /OUT:$@ $(MPN_P0_OBJS)
mpn_p3.lib: msvc-build $(MPN_P3_OBJS)
link -lib /NOLOGO /OUT:$@ $(MPN_P3_OBJS)
mpn_p4.lib: msvc-build $(MPN_P4_OBJS)
link -lib /NOLOGO /OUT:$@ $(MPN_P4_OBJS)
gmp.lib: mpn_$(MPN_TYPE).lib $(GMP_ALL_OBJS)
link -lib /NOLOGO /OUT:$@ $(GMP_ALL_OBJS) mpn_$(MPN_TYPE).lib
CFLAGS = /nologo /MD /W3 /GX /I "." /I $(srcdir) /I "$(srcdir)\mpn\generic" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "_MBCS"
{$(srcdir)\mpn\generic}.c{mpn\generic}.obj:
cl -c $(CFLAGS) /Fo$@ $?
{$(srcdir)\mpn}.c{mpn}.obj:
cl -c $(CFLAGS) /Fo$@ $?
{$(srcdir)\mpf}.c{mpf}.obj:
cl -c $(CFLAGS) /Fo$@ $?
{$(srcdir)\mpq}.c{mpq}.obj:
cl -c $(CFLAGS) /Fo$@ $?
{$(srcdir)\mpz}.c{mpz}.obj:
cl -c $(CFLAGS) /Fo$@ $?
{$(srcdir)\printf}.c{printf}.obj:
cl -c $(CFLAGS) /Fo$@ $?
{$(srcdir)\scanf}.c{scanf}.obj:
cl -c $(CFLAGS) /Fo$@ $?
{$(srcdir)}.c{}.obj:
cl -c $(CFLAGS) /Fo$@ $?
.asm.obj:
nasm -O9 -Xvc -f win32 -i $(@D)\ -o $@ $?
msvc-build: config-vc6.$(MPN_TYPE) gmp.h.vc6
copy config-vc6.$(MPN_TYPE) config.h
copy gmp.h.vc6 gmp.h
for %d in ($(AUTO_SUBDIRS)) do \
if not exist %d mkdir %d
echo > $@
clean:
-erase mpn\generic\*.obj
-erase mpn\*.obj
-erase mpf\*.obj
-erase mpq\*.obj
-erase mpz\*.obj
-erase printf\*.obj
-erase scanf\*.obj
-erase *.obj
-erase mpn_*.lib
-erase gmp.lib
-for %o in ($(MPN_P0_ASM_SOURCES:.asm=.obj)) do erase %o
-for %o in ($(MPN_P3_ASM_SOURCES:.asm=.obj)) do erase %o
-for %o in ($(MPN_P4_ASM_SOURCES:.asm=.obj)) do erase %o
-for %d in ($(AUTO_SUBDIRS)) do rmdir /S /Q %d
-erase config.h
-erase gmp.h
-erase msvc-build

View file

@ -1,280 +0,0 @@
/*
config.h.in -- Template configuration file.
*/
/*
Copyright (c) 1990, Giuseppe Attardi.
Copyright (c) 2001, Juan Jose Garcia Ripoll.
ECoLisp is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
See file '../Copyright' for full details.
*/
/*
* FEATURES LINKED IN
*/
/* Always use CLOS */
#define CLOS
/* Use Boehm's garbage collector */
#define GBC_BOEHM 1
#ifdef GBC_BOEHM
#define ECL_DYNAMIC_VV
#endif
/* Use GNU Multiple Precision library for bignums */
#define WITH_GMP 1
/* Userland threads? */
/* #undef ECL_THREADS */
#ifdef ECL_THREADS
# define GC_THREADS
#endif
/* Network streams */
#define TCP 1
#if defined(TCP) && (defined(_MSC_VER) || defined(mingw32))
# define ECL_WSOCK
#endif
/* Foreign functions interface */
#define ECL_FFI
/*
* C TYPES AND SYSTEM LIMITS
*/
/*
* The integer type
*
* cl_fixnum must be an integer type, large enough to hold a pointer.
* Ideally, according to the ISOC99 standard, we should use intptr_t,
* but the required headers are not present in all systems. Hence we
* use autoconf to guess the following values.
*/
#define FIXNUM_BITS 32
#define MOST_POSITIVE_FIXNUM ((cl_fixnum)536870911)
#define MOST_NEGATIVE_FIXNUM ((cl_fixnum)-536870912)
typedef int cl_fixnum;
typedef unsigned int cl_index;
typedef unsigned int cl_hashkey;
/*
* The character type
*/
#define CHAR_CODE_LIMIT 256
/*
* Array limits
*/
#define ARANKLIM 64 /* array rank limit */
#ifdef GBC_BOEHM
#define ADIMLIM 536870911 /* array dimension limit */
#define ATOTLIM 536870911 /* array total limit */
#else
#define ADIMLIM 16*1024*1024 /* array dimension limit */
#define ATOTLIM 16*1024*1024 /* array total limit */
#endif
/*
* Function limits.
*
* In general, any of these limits must fit in a "signed int".
*/
/* Maximum number of function arguments */
#define CALL_ARGUMENTS_LIMIT 65536
/* Maximum number of required arguments */
#define LAMBDA_PARAMETERS_LIMIT 64
/* Numb. of args. which can be passed using the C stack */
/* See cmplam.lsp if you change this value */
#define C_ARGUMENTS_LIMIT 64
/* Maximum number of output arguments */
#define ECL_MULTIPLE_VALUES_LIMIT 64
/* A setjmp that does not save signals */
#define ecl_setjmp setjmp
#define ecl_longjmp longjmp
/*
* Structure/Instance limits. The index to a slot must fit in the
* "int" type. We also require ECL_SLOTS_LIMIT <= CALL_ARGUMENTS_LIMIT
* because constructors typically require as many arguments as slots,
* or more.
*/
#define ECL_SLOTS_LIMIT 32768
/* Missing integer types */
typedef char int8_t;
typedef short int16_t;
typedef int int32_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
/* -CUT-: Everything below this mark will not be installed */
/* -------------------------------------------------------------------- *
* BUILD OPTIONS WHICH NEED NOT BE EXPORTED *
* -------------------------------------------------------------------- */
/*
* FEATURES LINKED IN:
*/
/* CLX */
#define CLX 1
/* Locatives */
/* #undef LOCATIVE */
/* Use old MIT LOOP macro system */
/* #undef ECL_OLD_LOOP */
/* Define this if you want a runtime version only without compiler */
/* #undef RUNTIME */
/* Profile tool */
/* #undef PROFILE */
/* Program Development Environment */
/* #undef PDE */
/* Tcl/Tk library */
/* #undef TK */
/* Allow loading dynamically linked code */
#define ENABLE_DLOPEN 1
/* Undefine this if you do not want ECL to check for circular lists */
#define ECL_SAFE
/* Allow STREAM operations to work on arbitrary objects */
#define ECL_CLOS_STREAMS 1
/* Use CMU Common-Lisp's FORMAT routine */
#define ECL_CMU_FORMAT 1
/* Bytecodes and arguments are 8 and 16 bits large, respectively */
/* #undef ECL_SMALL_BYTECODES */
/* We have non-portable implementation of FFI calls */
#define ECL_DYNAMIC_FFI 1
/*
* SYSTEM FEATURES:
*/
/* Stack grows downwards */
#define DOWN_STACK 1
/* Arguments cannot be accessed as array */
/* #undef NO_ARGS_ARRAY */
/* Most significant byte first */
/* #undef WORDS_BIGENDIAN */
/* Has <sys/resource.h> */
/* #undef HAVE_SYS_RESOURCE_H */
/* #undef HAVE_ULIMIT_H */
/* High precision timer */
/* #undef HAVE_NANOSLEEP */
/* Float version if isnan() */
/* #undef HAVE_ISNANF */
/* float.h for epsilons, maximum real numbers, etc */
#define HAVE_FLOAT_H 1
/* select() */
/* #undef HAVE_SELECT */
/* #undef HAVE_SYS_IOCTL_H */
/* putenv() or setenv() */
#undef HAVE_SETENV
#define HAVE_PUTENV 1
/* times() and sys/times.h */
/* #undef HAVE_TIMES */
/* user home directory, user name, etc... */
/* #undef HAVE_PW_H */
/* symbolic links and checking their existence */
/* #undef HAVE_LSTAT */
/* safe creation of temporary files */
/* #undef HAVE_MKSTEMP */
/* timer for userland threads */
/* #undef HAVE_ALARM */
/* filesytem */
/* #undef HAVE_DIRENT_H */
/* dynamic linking of libraries */
/* #undef HAVE_DLFCN_H */
/* #undef HAVE_LINK_H */
/* #undef HAVE_MACH_O_DYLD_H */
/* POSIX signals */
/* #undef HAVE_SIGPROCMASK */
/* isatty() checks whether a file is connected to a */
#define HAVE_ISATTY 1
/* compiler understands long long */
#define HAVE_LONG_LONG 1
/* what characters are used to mark beginning of new line */
#define ECL_NEWLINE_IS_CRLF 1
/* #undef ECL_NEWLINE_IS_LFCR */
/*
* PARAMETERS:
*/
/*
* Memory limits for the old garbage collector.
*/
#define LISP_PAGESIZE 2048 /* Page size in bytes */
#define MAXPAGE 16384 /* Maximum Memory Size */
/*
* The lisp environment has several stacks. These are their limits:
*/
#define BDSSIZE 2048 /* Size of Binding Stack */
#define BDSGETA 16 /* Safety zone of BDS */
#define FRSSIZE 1024 /* Size of Frame Stack */
#define FRSGETA 16 /* Safety zone of FRS */
#ifdef THREADS
#define CSSIZE 7500 /* Size of C Stack of each thread */
#define CSGETA 500
#else
#define CSSIZE 20000 /* Size of C Stack */
#define CSGETA 4000
#endif
/* We reserve these many bytes for computation with bignums registers */
#define BIGNUM_REGISTER_SIZE 16
/*
* Macros that depend on these system features.
*/
#if defined(sparc) || defined(i386) || defined(mips)
# define stack_align(n) (((n) + 0x7) & ~0x7)
#else
# define stack_align(n) (((n) + 03) & ~03)
#endif
/* #undef FILE_CNT */
#if 0 == 1
# define FILE_CNT(fp) ((fp)->_IO_read_end - (fp)->_IO_read_ptr)
#endif
#if 0 == 2
# define FILE_CNT(fp) ((fp)->_r)
#endif
#if 3 == 3
# define FILE_CNT(fp) ((fp)->_cnt)
#endif
#if defined(MSDOS) || defined(cygwin) || defined(mingw32) || defined(_MSC_VER)
# define IS_DIR_SEPARATOR(x) ((x=='/')||(x=='\\'))
# define DIR_SEPARATOR '/'
# define PATH_SEPARATOR ';'
#else
# define IS_DIR_SEPARATOR(x) (x=='/')
# define DIR_SEPARATOR '/'
# define PATH_SEPARATOR ':'
#endif /* MSDOS */
#define ECL_ARCHITECTURE "PENTIUM4"
#define strcasecmp _stricmp
#define isnan _isnan
#define finite _finite
#define sleep _sleep
#include "@ECL_FPE_CODE@"