--- 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
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}