1# 2# Makefile for binutils under openVMS (Alpha and Vax) 3# 4# For use with gnu-make for vms 5# 6# Created by Klaus K"ampf, kkaempf@rmi.de 7# 8# 9 10# Distribution version, filled in by configure.com 11VERSION=@VERSION@ 12 13ifeq ($(ARCH),ALPHA) 14TARGET=""vms-alpha"" 15else 16TARGET=""vms-vax"" 17endif 18 19ifeq ($(CC),gcc) 20CFLAGS=/include=([],[-.include],[-.bfd])$(DEFS) 21DEFS=/define=("TARGET=$(TARGET)") 22LIBS=,gnu_cc_library:libgcc/lib,sys$$library:vaxcrtl.olb/lib,gnu_cc_library:crt0.obj 23else 24CFLAGS=/noopt/debug/include=([],[-.include],[-.bfd])$(DEFS)\ 25/warnings=disable=(missingreturn,implicitfunc,longextern) 26DEFS=/define=("TARGET=$(TARGET)","const=","unlink=remove") 27LIBS=,sys$$library:vaxcrtl.olb/lib 28endif 29 30BFDLIB = [-.bfd]libbfd.olb/lib 31BFDLIB_DEP = [-.bfd]libbfd.olb 32LIBIBERTY_DEP = [-.libiberty]libiberty.olb 33LIBIBERTY = [-.libiberty]libiberty.olb/lib 34OPCODES_DEP = [-.opcodes]libopcodes.olb 35OPCODES = [-.opcodes]libopcodes.olb/lib 36 37DEBUG_OBJS = rddbg.obj,debug.obj,stabs.obj,ieee.obj,rdcoff.obj 38 39WRITE_DEBUG_OBJS = $(DEBUG_OBJS),wrstabs.obj 40 41BULIBS = []bucomm.obj,version.obj,filemode.obj 42 43ADDL_DEPS = $(BULIBS),$(BFDLIB_DEP),$(LIBIBERTY_DEP) 44ADDL_LIBS = $(BULIBS),$(BFDLIB),$(LIBIBERTY) 45 46SIZEOBJS = $(ADDL_DEPS),size.obj 47 48STRINGSOBJS = $(ADDL_DEPS),strings.obj 49 50NMOBJS = $(ADDL_DEPS),nm.obj 51 52OBJDUMPOBJS = $(ADDL_DEPS),objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(OPCODES_DEP) 53 54all: config.h size.exe strings.exe objdump.exe nm.exe 55 56size.exe: $(SIZEOBJS) 57 link/exe=$@ size.obj,$(ADDL_LIBS)$(LIBS) 58 59strings.exe: $(STRINGSOBJS) 60 link/exe=$@ strings.obj,$(ADDL_LIBS)$(LIBS) 61 62nm.exe: $(NMOBJS) 63 link/exe=$@ nm.obj,$(ADDL_LIBS)$(LIBS) 64 65objdump.exe: $(OBJDUMPOBJS) 66 link/exe=$@ objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(BFDLIB),$(OPCODES),$(ADDL_LIBS)$(LIBS) 67 68 69version.obj: version.c 70 $(CC) $(CFLAGS)/define=(VERSION="""$(VERSION)""") $< 71 72config.h: 73 $$ @configure 74 $(MAKE) -f makefile.vms "CC=$(CC)" 75 76[-.bfd]libbfd.olb: 77 $(CD) [-.bfd] 78 $(MAKE) -f makefile.vms "CC=$(CC)" 79 $(CD) [-.binutils] 80 81[-.libiberty]libiberty.olb: 82 $(CD) [-.libiberty] 83 $(MAKE) -f makefile.vms "CC=$(CC)" 84 $(CD) [-.binutils] 85 86[-.opcodes]libopcodes.olb: 87 $(CD) [-.opcodes] 88 $(MAKE) -f makefile.vms "CC=$(CC)" 89 $(CD) [-.binutils] 90 91clean: 92 $$ purge 93 $(RM) *.obj; 94 $(RM) *.exe; 95 96distclean: clean 97 $(RM) config.h; 98 $(RM) makefile.vms; 99