aboutsummaryrefslogtreecommitdiff
path: root/binutils/makefile.vms
blob: df779b7e43f7130ac57b7e92f95adb82e72e1480 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#
# Makefile for binutils under openVMS (Alpha and Vax)
#
# For use with gnu-make for vms
#
# Created by Klaus K"ampf, kkaempf@rmi.de
#
#

ifeq ($(CC),gcc)
DEFS=
CFLAGS=/include=([],[-.include],[-.bfd])$(DEFS)
LIBS=,gnu_cc_library:libgcc/lib,sys$$library:vaxcrtl.olb/lib,gnu_cc_library:crt0.obj
else
DEFS=
OPT=/noopt/debug
CFLAGS=$(OPT)/include=([],"../include",[-.bfd])$(DEFS)\
 /name=(as_is,shortened)\
 /prefix=(all,except=("getopt","optarg","optopt","optind","opterr"))\
 /warns=(info=(ptrmismatch,shiftcount))
endif

LIBBFD = [-.bfd]libbfd.olb/lib
LIBBFD_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,dwarf.obj,\
  elfcomm.obj

BULIBS = bucomm.obj,version.obj,filemode.obj

ADDL_DEPS = $(BULIBS),$(LIBBFD_DEP),$(LIBIBERTY_DEP)
ADDL_LIBS = $(BULIBS),$(LIBBFD),$(LIBIBERTY)

SIZEOBJS = $(ADDL_DEPS),size.obj

STRINGSOBJS = $(ADDL_DEPS),strings.obj

NMOBJS = $(ADDL_DEPS),nm.obj

ADDR2LINEOBJS = $(ADDL_DEPS),addr2line.obj

OBJDUMPOBJS = objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(ADDL_DEPS),$(OPCODES_DEP)

all: config.h size.exe strings.exe objdump.exe nm.exe addr2line.exe

size.exe: $(SIZEOBJS)
	link/exe=$@ size.obj,$(ADDL_LIBS)

strings.exe: $(STRINGSOBJS)
	link/exe=$@ strings.obj,$(ADDL_LIBS)

nm.exe: $(NMOBJS)
	link/exe=$@ nm.obj,$(ADDL_LIBS)

addr2line.exe: $(ADDR2LINEOBJS)
	link/exe=$@ addr2line.obj,$(ADDL_LIBS)

objdump.exe: $(OBJDUMPOBJS)
	link/exe=$@ objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(ADDL_LIBS),$(LIBBFD),$(OPCODES)

config.h:
	$$ @configure
	$(MAKE) -f makefile.vms "CC=$(CC)"

clean:
	$$ purge
	$(RM) *.obj;
	$(RM) *.exe;

distclean: clean
	$(RM) config.h;
	$(RM) makefile.vms;