#
-# Makefile for binutils under openVMS/AXP
+# Makefile for binutils under openVMS/Alpha
#
# For use with gnu-make for vms
#
-# Created by Klaus Kรคmpf, kkaempf@progis.de
+# Created by Klaus K"ampf, kkaempf@progis.de
#
#
-CC=gcc
+# Distribution version, filled in by configure.com
+VERSION=
+
+TARGET=""evax-alpha""
ifeq ($(CC),gcc)
CFLAGS=/include=([],[-.include],[-.bfd])$(DEFS)
-DEFS=/define=("unlink=remove")
-GCCLIBS=,GNU_CC:[000000]LIBGCC2/lib,GNU_CC:[000000]LIBGCCLIB/lib,sys$$disk:[-]vprintf.obj,sys$$library:vaxcrtl.olb/lib,GNU_CC:[000000]crt0.obj
+DEFS=/define=("TARGET=$(TARGET)")
+LIBS=,GNU:[000000]libgcc/lib,sys$$library:vaxcrtl.olb/lib,GNU:[000000]crt0.obj
else
-CFLAGS=/noopt/debug/include=([],[-.include],[-.bfd])$(DEFS)
-DEFS=/define=(\
+CFLAGS=/noopt/debug/include=([],[-.include],[-.bfd])$(DEFS)/warnings=disable=(missingreturn,implicitfunc)
+DEFS=/define=("TARGET=$(TARGET)",\
+"const=","unlink=remove",\
"_bfd_generic_get_section_contents_in_window"="_bfd_generic_get_win_section_cont",\
"_bfd_elf_section_from_bfd_section"="_bfd_elf_sec_from_bfd_sec")
-GCCLIBS=
+LIBS=,sys$$library:vaxcrtl.olb/lib
endif
-LIBBFD = [-.bfd]libbfd.olb
-LIBIBERTY = [-.libiberty]libiberty.olb
-LIBOPCODES = [-.opcodes]libopcodes.olb
+BFDLIB = [-.bfd]libbfd.olb/lib
+BFDLIB_DEP = [-.bfd]libbfd.olb
+LIBIBERTY_DEP = [-.libiberty]libiberty.olb
+LIBIBERTY = [-.libiberty]libiberty.olb/lib
+OPCODES_DEP = [-.opcodes]libopcodes.olb
+OPCODES = [-.opcodes]libopcodes.olb/lib
+
+DEBUG_OBJS = rddbg.obj,debug.obj,stabs.obj,ieee.obj,rdcoff.obj
+
+WRITE_DEBUG_OBJS = $(DEBUG_OBJS),wrstabs.obj
+
+BULIBS = []bucomm.obj,version.obj,filemode.obj
+
+ADDL_DEPS = $(BULIBS),$(BFDLIB_DEP),$(LIBIBERTY_DEP)
+ADDL_LIBS = $(BULIBS),$(BFDLIB),$(LIBIBERTY)
-LIBS = $(LIBBFD) $(LIBOPCODES) $(LIBIBERTY)
+SIZEOBJS = $(ADDL_DEPS),size.obj
-DEBUG_OBJS = rddbg.obj,debug.obj,stabs.obj,ieee.obj,prdbg.obj
+STRINGSOBJS = $(ADDL_DEPS),strings.obj
-SIZEOBJS = bucomm.obj,version.obj,filemode.obj,size.obj
+NMOBJS = $(ADDL_DEPS),nm.obj
-OBJDUMPOBJS = bucomm.obj,version.obj,filemode.obj,objdump.obj
+OBJDUMPOBJS = $(ADDL_DEPS),objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(OPCODES_DEP)
-NMOBJS = bucomm.obj,version.obj,filemode.obj,nm.obj
+all: config.h size.exe strings.exe objdump.exe nm.exe
-all: config.h size.exe objdump.exe nm.exe
+size.exe: $(SIZEOBJS)
+ link/exe=$@ size.obj,$(ADDL_LIBS)$(LIBS)
-size.exe: $(SIZEOBJS) $(LIBS)
- link/exe=$@ $(SIZEOBJS),$(LIBBFD)/lib,$(LIBOPCODES)/lib,$(LIBIBERTY)/lib$(GCCLIBS)
+strings.exe: $(STRINGSOBJS)
+ link/exe=$@ strings.obj,$(ADDL_LIBS)$(LIBS)
-objdump.exe: $(DEBUG_OBJS) $(OBJDUMPOBJS) $(LIBS)
- link/exe=$@ $(OBJDUMPOBJS),$(DEBUG_OBJS),$(LIBBFD)/lib,$(LIBOPCODES)/lib,$(LIBIBERTY)/lib$(GCCLIBS)
+nm.exe: $(NMOBJS)
+ link/exe=$@ nm.obj,$(ADDL_LIBS)$(LIBS)
+
+objdump.exe: $(OBJDUMPOBJS)
+ link/exe=$@ objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(BFDLIB),$(OPCODES),$(ADDL_LIBS)$(LIBS)
-nm.exe: $(NMOBJS) $(LIBS)
- link/exe=$@ $(NMOBJS),$(LIBBFD)/lib,$(LIBOPCODES)/lib,$(LIBIBERTY)/lib$(GCCLIBS)
version.obj: version.c
- $(CC) $(CFLAGS)/define=(VERSION="""960408""") $<
+ $(CC) $(CFLAGS)/define=(VERSION="""$(VERSION)""") $<
+
+config.h:
+ $$ @configure
+ $(MAKE) -f makefile.vms
+
+[-.bfd]libbfd.olb:
+ $(CD) [-.bfd]
+ $(MAKE) -f makefile.vms
+ $(CD) [-.binutils]
+
+[-.libiberty]libiberty.olb:
+ $(CD) [-.libiberty]
+ $(MAKE) -f makefile.vms
+ $(CD) [-.binutils]
-objdump.obj: objdump.c
- $(CC) $(CFLAGS) $<
+[-.opcodes]libopcodes.olb:
+ $(CD) [-.opcodes]
+ $(MAKE) -f makefile.vms
+ $(CD) [-.binutils]
-config.h: config.h-vms
- $(CP) $< $@
+clean:
+ $$ purge
+ $(RM) *.obj;
+ $(RM) *.exe;
+ $(RM) config.h;