--- a/src/Makefile 2020-02-27 13:20:46.906673900 +0100 +++ b/src/Makefile-new 2020-08-12 15:25:29.472778216 +0200 @@ -6,10 +6,6 @@ picoFiles = main.c gc.c apply.c flow.c sym.c subr.c big.c io.c net.c tab.c -CC = gcc -# CCLD is the cc (compiler frontend) to use for the link step. -CCLD = gcc - M32=-m32 CFLAGS = -c -O2 -pipe \ @@ -22,10 +18,9 @@ ifeq ($(shell uname), Linux) OS = Linux - CFLAGS += ${M32} - PICOLISP-FLAGS = ${M32} -rdynamic + PICOLISP-FLAGS = -rdynamic LIB-FLAGS = -lm -ldl - DYNAMIC-LIB-FLAGS = ${M32} -shared -export-dynamic + DYNAMIC-LIB-FLAGS = -shared -export-dynamic LCRYPT = -lcrypt STRIP = strip else @@ -129,10 +124,10 @@ all: picolisp tools gate .c.o: - $(CC) $(CFLAGS) -D_OS='"$(OS)"' $*.c + $(CC) $(CFLAGS) -fPIC -D_OS='"$(OS)"' $*.c ext.o ht.o: pico.h - $(CC) $(CFLAGS) -D_OS='"$(OS)"' $*.c $(DYNAMIC-CC-FLAGS) + $(CC) $(CFLAGS) -fPIC -D_OS='"$(OS)"' $*.c $(DYNAMIC-CC-FLAGS) $(picoFiles:.c=.o) ext.o ht.o: pico.h main.o: vers.h @@ -142,51 +137,40 @@ $(bin)/picolisp$(dll): $(picoFiles:.c=.o) $(CCLD) -o $(bin)/picolisp$(dll) $(DYNAMIC-LIB-FLAGS) $(picoFiles:.c=.o) - $(STRIP) $(bin)/picolisp$(dll) $(bin)/picolisp: $(picoFiles:.c=.o) $(bin)/picolisp$(dll) start.o mkdir -p $(bin) $(lib) $(CCLD) -o $(bin)/picolisp$(exe) $(PICOLISP-FLAGS) start.o -L$(bin) -l$(bin)/picolisp - $(STRIP) $(bin)/picolisp$(exe) else $(bin)/picolisp: $(picoFiles:.c=.o) mkdir -p $(bin) $(lib) $(CCLD) -o $(bin)/picolisp$(exe) $(PICOLISP-FLAGS) $(picoFiles:.c=.o) $(LIB-FLAGS) - $(STRIP) $(bin)/picolisp$(exe) - endif $(lib)/ext$(dll): ext.o $(CCLD) -o $(lib)/ext$(dll) $(DYNAMIC-LIB-FLAGS) ext.o $(DLL-DEFS) $(LCRYPT) - $(STRIP) $(lib)/ext$(dll) $(lib)/ht$(dll): ht.o $(CCLD) -o $(lib)/ht$(dll) $(DYNAMIC-LIB-FLAGS) ht.o $(DLL-DEFS) - $(STRIP) $(lib)/ht$(dll) $(bin)/lat1: lat1.c $(CC) -o $(bin)/lat1$(exe) lat1.c - $(STRIP) $(bin)/lat1$(exe) $(bin)/utf2: utf2.c $(CC) -o $(bin)/utf2$(exe) utf2.c - $(STRIP) $(bin)/utf2$(exe) $(bin)/balance: balance.c $(CC) -o $(bin)/balance$(exe) balance.c - $(STRIP) $(bin)/balance$(exe) $(bin)/ssl: ssl.c $(CC) -o $(bin)/ssl$(exe) ssl.c -lssl -lcrypto - $(STRIP) $(bin)/ssl$(exe) $(bin)/httpGate: httpGate.c $(CC) -o $(bin)/httpGate$(exe) httpGate.c -lssl -lcrypto - $(STRIP) $(bin)/httpGate$(exe) # Clean up