]> git.sur5r.net Git - cc65/commitdiff
Makefile cleanup. Among other things, allow use of the --as-needed linker flag
authoruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 8 Feb 2009 17:19:45 +0000 (17:19 +0000)
committeruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 8 Feb 2009 17:19:45 +0000 (17:19 +0000)
by rearranging arguments for the linker.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3922 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/ar65/make/gcc.mak
src/ca65/make/gcc.mak
src/cc65/make/gcc.mak
src/cl65/make/gcc.mak
src/co65/make/gcc.mak
src/da65/make/gcc.mak
src/grc/make/gcc.mak
src/ld65/make/gcc.mak
src/od65/make/gcc.mak
src/sim65/make/gcc.mak

index 48238700ff004cd092435de67673913bd4fe2a5e..665aa8f2c252ff51508093d5f2802fb78b247f7f 100644 (file)
@@ -2,6 +2,11 @@
 # gcc Makefile for ar65
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = ar65
+
 # Library dir
 COMMON = ../common
 
@@ -27,28 +32,28 @@ OBJS =      add.o           \
 LIBS = $(COMMON)/common.a
 
 
-EXECS = ar65
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all : $(EXECS)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-
-ar65:   $(OBJS) $(LIBS)
-       $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $@ ; fi
+$(EXE):        $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core
+       $(RM) *~ core.* *.map
 
 zap:   clean
-       $(RM) *.o $(EXECS) .depend
+       $(RM) *.o $(EXE) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies
index 49d1a49a6be9c6fd7c03d1297fae9711217f6814..6030e9de30877b910a4d1c719dc7bf9d46445767 100644 (file)
@@ -2,6 +2,11 @@
 # gcc Makefile for ca65
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = ca65
+
 # Library dir
 COMMON = ../common
 
@@ -55,43 +60,43 @@ OBJS =  anonname.o      \
         symtab.o       \
         token.o         \
                toklist.o       \
-       ulabel.o
+       ulabel.o
 
 # -----------------------------------------------------------------------------
 # List of all macro files
 
 INCS = atari.inc       \
         cbm.inc                \
-       cpu.inc         \
-       generic.inc     \
+       cpu.inc         \
+       generic.inc     \
         longbranch.inc
 
-# -----------------------------------------------------------------------------
-
 LIBS = $(COMMON)/common.a
 
-EXECS = ca65
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all : $(EXECS)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-ca65:   $(INCS) $(OBJS) $(LIBS)
-       $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $@ ; fi
+$(EXE):        $(INCS) $(OBJS) $(LIBS)
+       $(CC) $(OBJS) $(LIBS) $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 inc:   $(INCS)
 
 clean:
-       rm -f *~ core *.lst
+       $(RM) *~ core.* *.map
 
 zap:   clean
-       rm -f *.o $(EXECS) $(INCS) .depend
+       $(RM) *.o $(EXE) $(INCS) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies
index 030189fd75e5fef838aa9839feb98da204f2c01b..1752e1029217d83faf896d55816a07f960a5608b 100644 (file)
@@ -110,11 +110,11 @@ all:      depend
 endif
 
 $(EXE):        $(OBJS) $(LIBS)
-       $(CC) $(LDFLAGS) -o $(EXE) $(CFLAGS) $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
        @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core *.map
+       $(RM) *~ core.* *.map
 
 zap:   clean
        $(RM) *.o $(EXE) .depend
index a7c02ae59c6868e9b9c0dbb9c85acbfd5f193bab..82bb4c2594fa1152278fb83524aa4f1111a89ba1 100644 (file)
@@ -2,6 +2,11 @@
 # Makefile for the cl65 compile&link utility
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = cl65
+
 # Library dir
 COMMON = ../common
 
@@ -23,29 +28,28 @@ OBJS =      error.o         \
 
 LIBS = $(COMMON)/common.a
 
-EXECS = cl65
-
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all : $(EXECS)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-cl65:  $(OBJS) $(LIBS)
-       $(CC) $(LDFLAGS) -o cl65 $(OBJS) $(LIBS)
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) cl65 ; fi
+$(EXE):        $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core
+       $(RM) *~ core.* *.map
 
 zap:   clean
-       $(RM) *.o $(EXECS) .depend
-
+       $(RM) *.o $(EXE) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies
index 1fa07598c6ad50fba3f91106985fc3341c1c6547..7dbbe950629634f707f046da71da20f16fd0ddff 100644 (file)
@@ -2,6 +2,11 @@
 # gcc Makefile for co65
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = co65
+
 # Library dir
 COMMON = ../common
 
@@ -20,28 +25,28 @@ OBJS =      convert.o       \
 
 LIBS = $(COMMON)/common.a
 
-EXECS = co65
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all : $(EXECS)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-
-co65:   $(OBJS) $(LIBS)
-       $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $@ ; fi
+$(EXE):        $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core *.lst
+       $(RM) *~ core.* *.map
 
 zap:   clean
-       $(RM) *.o $(EXECS) .depend
+       $(RM) *.o $(EXE) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies
index 7932d0e6c2992902237f9ebb0e3ed5c4ea7a8acc..35e2805c7723a6048662513a9dab1960c7c978e0 100644 (file)
@@ -1,7 +1,12 @@
-#                
+#
 # gcc Makefile for da65
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = da65
+
 # Library dir
 COMMON = ../common
 
@@ -33,29 +38,28 @@ OBJS =      asminc.o        \
 LIBS = $(COMMON)/common.a
 
 
-EXECS = da65
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all : $(EXECS)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-
-da65:   $(OBJS) $(LIBS)
-       $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $@ ; fi
+$(EXE):        $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core *.map
+       $(RM) *~ core.* *.map
 
 zap:   clean
-       $(RM) *.o $(EXECS) .depend
-
+       $(RM) *.o $(EXE) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies
index d86b3055b3b19e22b1bbb1b7266d4ea163a412a3..e5d7c9effe15e85ed09ab86610371ea6c6cdbe2d 100644 (file)
@@ -2,6 +2,11 @@
 # gcc Makefile for grc
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = grc
+
 COMMON = ../common
 
 CFLAGS         = -g -O2 -Wall -W -std=c89 -I$(COMMON)
@@ -11,30 +16,30 @@ EBIND       = emxbind
 
 OBJS =  grc.o
 
-EXECS = grc
-
 LIBS = $(COMMON)/common.a
 
+# ------------------------------------------------------------------------------
+# Makefile targets
+
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all : $(EXECS)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-
-grc:   $(OBJS) $(LIBS)
-       $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $@ ; fi
+$(EXE):        $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core *.lst
+       $(RM) *~ core.* *.map
 
 zap:   clean
-       $(RM) *.o $(EXECS) .depend
+       $(RM) *.o $(EXE) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies
index 94ff4a67c4908486ff82d6f0613f6f2a6e2d7fea..7aed11bad3c5f14cdab0f3f69611e106d0742d46 100644 (file)
@@ -2,6 +2,11 @@
 # gcc Makefile for ld65
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = ld65
+
 # Library dir
 COMMON = ../common
 
@@ -75,37 +80,31 @@ INCS =      apple2.inc      \
         supervision.inc \
        vic20.inc
 
-# -----------------------------------------------------------------------------
-#
-
 LIBS = $(COMMON)/common.a
 
 
-EXECS = ld65
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all : $(EXECS)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-
-ld65:   $(INCS) $(OBJS) $(LIBS)
-       $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $@ ; fi
-
-inc:   $(INCS)
+$(EXE):        $(INCS) $(OBJS) $(LIBS)
+       $(CC) $(OBJS) $(LIBS) $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core *.map
-
-zap:           clean
-       $(RM) *.o $(INCS) $(EXECS) .depend
+       $(RM) *~ core.* *.map
 
+zap:   clean
+       $(RM) *.o $(INCS) $(EXE) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies
index 1c05b8193f1648442892bc8828dfcbb5003b9f4a..da18ade9723cf94dab1999b2f6317e99848c08b3 100644 (file)
@@ -3,6 +3,11 @@
 #
 
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = od65
+
 # Library dir
 COMMON = ../common
 
@@ -19,25 +24,25 @@ OBJS =      dump.o          \
 
 LIBS = $(COMMON)/common.a
 
-EXE    = od65
-
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all:   $(EXE)
+all:   $(EXE)
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-$(EXE):        $(OBJS)
-       $(CC) $(LDFLAGS) -o $(EXE) $(CFLAGS) $(OBJS) $(LIBS)
+$(EXE):        $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
        @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 clean:
-       $(RM) *~ core *.map
+       $(RM) *~ core.* *.map
 
 zap:   clean
        $(RM) *.o $(EXE) .depend
index 7d7cf173f68c69d9227356207ead967d6e4db64d..16bdd0f29adb9d64dffa0e08ad61af0bd8c605a7 100644 (file)
@@ -2,6 +2,11 @@
 # gcc Makefile for sim65
 #
 
+# ------------------------------------------------------------------------------
+
+# The executable to build
+EXE    = sim65
+
 # Library dir
 COMMON = ../common
 
@@ -28,34 +33,32 @@ OBJS =      addrspace.o     \
 
 LIBS = $(COMMON)/common.a
 
-EXECS = sim65
+# ------------------------------------------------------------------------------
+# Makefile targets
 
+# Main target - must be first
 .PHONY: all
 ifeq (.depend,$(wildcard .depend))
-all:   $(EXECS) chips
+all:   $(EXE) chips
 include .depend
 else
 all:   depend
        @$(MAKE) -f make/gcc.mak all
 endif
 
-
-sim65: $(OBJS) $(LIBS)
-       $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS) -ldl
-       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $@ ; fi
+$(EXE):        $(OBJS) $(LIBS)
+       $(CC) $^ $(LDFLAGS) -o $@
+       @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
 
 .PHONY:        chips
 chips:
        @$(MAKE) -C chips -f make/gcc.mak
 
-
 clean:
-       @$(MAKE) -C chips -f make/gcc.mak clean
-       $(RM) *~ core *.lst
+       $(RM) *~ core.* *.map
 
-zap:   clean
-       @$(MAKE) -C chips -f make/gcc.mak zap
-       $(RM) *.o $(EXECS) .depend
+zap:   clean
+       $(RM) *.o $(EXE) .depend
 
 # ------------------------------------------------------------------------------
 # Make the dependencies