scc

simple c99 compiler
git clone git://git.simple-cc.org/scc
Log | Files | Refs | Submodules | README | LICENSE

commit b34b9955320a4daa458df2baea22db6341cd7346
parent 6087aab1c0e69fb18a5da8780ca35d75f49c279e
Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
Date:   Thu, 27 Oct 2022 19:29:38 +0200

build: Use PROJ_LDLIBS always with the linker

This variable was designed to make easier modifications of the
command line of the linker but was not used in the actual linker
command lines.

Diffstat:
Msrc/cmd/Makefile | 24++++++++++++++----------
Msrc/cmd/as/target/powerpc/powerpc.mk | 2+-
Msrc/cmd/as/target/powerpc/powerpc64.mk | 2+-
Msrc/cmd/as/target/x80/z80.mk | 2+-
Msrc/cmd/as/target/x86/amd64.mk | 2+-
Msrc/cmd/as/target/x86/i286.mk | 2+-
Msrc/cmd/as/target/x86/i386.mk | 2+-
Msrc/cmd/cc/cc1/Makefile | 2+-
Msrc/cmd/cc/cc2/target/amd64-sysv/target.mk | 2+-
Msrc/cmd/cc/cc2/target/i386-sysv/target.mk | 2+-
Msrc/cmd/cc/cc2/target/qbe_amd64-sysv/target.mk | 2+-
Msrc/cmd/cc/cc2/target/qbe_arm64-sysv/target.mk | 2+-
Msrc/cmd/cc/cc2/target/z80-scc/target.mk | 2+-
Msrc/cmd/cc/posix/Makefile | 2+-
Msrc/cmd/ld/Makefile | 2+-
15 files changed, 28 insertions(+), 24 deletions(-)

diff --git a/src/cmd/Makefile b/src/cmd/Makefile @@ -20,6 +20,10 @@ TARGET =\ $(BINDIR)/scc-addr2line\ $(LIBEXEC)/scc/qbe\ +RANLIBOBJS = ranlib.o $(DRIVER).o +AROBJS = ar.o $(DRIVER).o + + all: $(TARGET) $(DIRS) qbe/.git: @@ -34,27 +38,27 @@ $(LIBEXEC)/scc/qbe: qbe/qbe cp qbe/qbe $@ $(BINDIR)/scc-nm: nm.o $(LIBMACH) $(LIBSCC) - $(CC) $(PROJ_LDFLAGS) nm.o -lmach -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) nm.o -lmach -lscc $(PROJ_LDLIBS) -o $@ $(BINDIR)/scc-strip: strip.o $(LIBMACH) $(LIBSCC) - $(CC) $(PROJ_LDFLAGS) strip.o -lmach -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) strip.o -lmach -lscc $(PROJ_LDLIBS) -o $@ $(BINDIR)/scc-size: size.o $(LIBMACH) $(LIBSCC) - $(CC) $(PROJ_LDFLAGS) size.o -lmach -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) size.o -lmach -lscc $(PROJ_LDLIBS) -o $@ -$(BINDIR)/scc-ranlib: ranlib.o $(DRIVER).o $(LIBMACH) $(LIBSCC) - $(CC) $(PROJ_LDFLAGS) ranlib.o $(DRIVER).o -lmach -lscc -o $@ +$(BINDIR)/scc-ranlib: $(RANLIBOBJS) $(LIBMACH) $(LIBSCC) + $(CC) $(PROJ_LDFLAGS) $(RANLIBOBJS) -lmach -lscc $(PROJ_LDLIBS) -o $@ $(BINDIR)/scc-objdump: objdump.o $(LIBMACH) - $(CC) $(PROJ_LDFLAGS) objdump.o -lmach -o $@ + $(CC) $(PROJ_LDFLAGS) objdump.o -lmach $(PROJ_LDLIBS) -o $@ $(BINDIR)/scc-objcopy: objcopy.o $(LIBMACH) - $(CC) $(PROJ_LDFLAGS) objcopy.o -lmach -o $@ + $(CC) $(PROJ_LDFLAGS) objcopy.o -lmach $(PROJ_LDLIBS) -o $@ $(BINDIR)/scc-addr2line: addr2line.o $(LIBMACH) $(LIBSCC) - $(CC) $(PROJ_LDFLAGS) addr2line.o -lmach -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) addr2line.o -lmach -lscc $(PROJ_LDLIBS) -o $@ -$(BINDIR)/scc-ar: ar.o $(DRIVER).o - $(CC) $(PROJ_LDFLAGS) ar.o $(DRIVER).o -o $@ +$(BINDIR)/scc-ar: $(AROBJS) + $(CC) $(PROJ_LDFLAGS) $(AROBJS) $(PROJ_LDLIBS) -o $@ include deps.mk diff --git a/src/cmd/as/target/powerpc/powerpc.mk b/src/cmd/as/target/powerpc/powerpc.mk @@ -9,4 +9,4 @@ $(POWERPC)/powerpctbl.c: $(POWERPC)/ops.dat $(POWERPC)/opers.dat ./mktbl -f powerpc -c powerpc $(LIBEXEC)/scc/as-powerpc: $(POWERPC_OBJ) - $(CC) $(PROJ_LDFLAGS) $(POWERPC_OBJ) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(POWERPC_OBJ) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/as/target/powerpc/powerpc64.mk b/src/cmd/as/target/powerpc/powerpc64.mk @@ -9,4 +9,4 @@ $(POWERPC)/powerpc64tbl.c: $(POWERPC)/ops.dat $(POWERPC)/opers.dat ./mktbl -f powerpc -c powerpc64 $(LIBEXEC)/scc/as-powerpc64: $(POWERPC64_OBJ) - $(CC) $(PROJ_LDFLAGS) $(POWERPC64_OBJ) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(POWERPC64_OBJ) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/as/target/x80/z80.mk b/src/cmd/as/target/x80/z80.mk @@ -8,4 +8,4 @@ target/x80/z80tbl.c: target/x80/ops.dat target/x80/opers.dat ./mktbl -f x80 -c z80 $(LIBEXEC)/scc/as-z80: $(OBJ) $(Z80_OBJ) - $(CC) $(PROJ_LDFLAGS) $(Z80_OBJ) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(Z80_OBJ) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/as/target/x86/amd64.mk b/src/cmd/as/target/x86/amd64.mk @@ -8,4 +8,4 @@ target/x86/amd64tbl.c: target/x86/ops.dat target/x86/opers.dat ./mktbl -f x86 -c amd64 $(LIBEXEC)/scc/as-amd64: $(AMD64_OBJ) - $(CC) $(PROJ_LDFLAGS) $(AMD64_OBJ) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(AMD64_OBJ) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/as/target/x86/i286.mk b/src/cmd/as/target/x86/i286.mk @@ -8,4 +8,4 @@ target/x86/i286tbl.c: target/x86/ops.dat target/x86/opers.dat ./mktbl -f x86 -c i286 $(LIBEXEC)/scc/as-i286: $(I286_OBJ) - $(CC) $(PROJ_LDFLAGS) $(I286_OBJ) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(I286_OBJ) -lscc $(PROJ_LDLIBS)-o $@ diff --git a/src/cmd/as/target/x86/i386.mk b/src/cmd/as/target/x86/i386.mk @@ -8,4 +8,4 @@ target/x86/i386tbl.c: target/x86/ops.dat target/x86/opers.dat ./mktbl -f x86 -c i386 $(LIBEXEC)/scc/as-i386: $(I386_OBJ) - $(CC) $(PROJ_LDFLAGS) $(I386_OBJ) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(I386_OBJ) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/cc/cc1/Makefile b/src/cmd/cc/cc1/Makefile @@ -28,6 +28,6 @@ TARGET = $(LIBEXEC)/scc/cc1 all: $(TARGET) $(TARGET): $(LIBSCC) $(OBJS) - $(CC) $(PROJ_LDFLAGS) $(OBJS) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(OBJS) -lscc $(PROJ_LDLIBS) -o $@ include deps.mk diff --git a/src/cmd/cc/cc2/target/amd64-sysv/target.mk b/src/cmd/cc/cc2/target/amd64-sysv/target.mk @@ -5,4 +5,4 @@ OBJ-amd64-sysv = $(OBJS) \ target/amd64-sysv/types.o $(LIBEXEC)/scc/cc2-amd64-sysv: $(LIBSCC) $(OBJ-amd64-sysv) - $(CC) $(PROJ_LDFLAGS) $(OBJ-amd64-sysv) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(OBJ-amd64-sysv) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/cc/cc2/target/i386-sysv/target.mk b/src/cmd/cc/cc2/target/i386-sysv/target.mk @@ -5,4 +5,4 @@ OBJ-i386-sysv = $(OBJS) \ target/i386-sysv/types.o $(LIBEXEC)/scc/cc2-i386-sysv: $(LIBSCC) $(OBJ-i386-sysv) - $(CC) $(PROJ_LDFLAGS) $(OBJ-i386-sysv) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(OBJ-i386-sysv) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/cc/cc2/target/qbe_amd64-sysv/target.mk b/src/cmd/cc/cc2/target/qbe_amd64-sysv/target.mk @@ -5,4 +5,4 @@ OBJ-qbe_amd64-sysv = $(OBJS) \ target/amd64-sysv/types.o $(LIBEXEC)/scc/cc2-qbe_amd64-sysv: $(LIBSCC) $(OBJ-qbe_amd64-sysv) - $(CC) $(PROJ_LDFLAGS) $(OBJ-qbe_amd64-sysv) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(OBJ-qbe_amd64-sysv) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/cc/cc2/target/qbe_arm64-sysv/target.mk b/src/cmd/cc/cc2/target/qbe_arm64-sysv/target.mk @@ -5,4 +5,4 @@ OBJ-qbe_arm64-sysv = $(OBJS) \ target/arm64-sysv/types.o \ $(LIBEXEC)/scc/cc2-qbe_arm64-sysv: $(LIBSCC) $(OBJ-qbe_arm64-sysv) - $(CC) $(PROJ_LDFLAGS) $(OBJ-qbe_arm64-sysv) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(OBJ-qbe_arm64-sysv) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/cc/cc2/target/z80-scc/target.mk b/src/cmd/cc/cc2/target/z80-scc/target.mk @@ -5,4 +5,4 @@ OBJ-z80-scc = $(OBJS) \ target/z80-scc/types.o \ $(LIBEXEC)/scc/cc2-z80-scc: $(LIBSCC) $(OBJ-z80-scc) - $(CC) $(PROJ_LDFLAGS) $(OBJ-z80-scc) -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(OBJ-z80-scc) -lscc $(PROJ_LDLIBS) -o $@ diff --git a/src/cmd/cc/posix/Makefile b/src/cmd/cc/posix/Makefile @@ -12,7 +12,7 @@ TARGETS =\ all: $(TARGETS) $(BINDIR)/scc-cc: $(LIBSCC) cc.o - $(CC) $(PROJ_LDFLAGS) cc.o -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) cc.o -lscc $(PROJ_LDLIBS) -o $@ $(BINDIR)/scc-cpp: scc.sh cp scc.sh $@ diff --git a/src/cmd/ld/Makefile b/src/cmd/ld/Makefile @@ -17,6 +17,6 @@ OBJS =\ all: $(TARGET) $(TARGET): $(OBJS) $(LIBMACH) $(LIBSCC) - $(CC) $(PROJ_LDFLAGS) $(OBJS) -lmach -lscc -o $@ + $(CC) $(PROJ_LDFLAGS) $(OBJS) -lmach -lscc $(PROJ_LDLIBS) -o $@ include deps.mk