1ed0d50c3Schristos# 2ed0d50c3Schristos# Makefile for binutils under openVMS (Alpha and Itanium) 3ed0d50c3Schristos# 4ed0d50c3Schristos# For use with gnu-make for vms 5ed0d50c3Schristos# 6ed0d50c3Schristos# Created by Klaus Kaempf, kkaempf@rmi.de 7ed0d50c3Schristos# 8*b88e3e88Schristos# Copyright (C) 2012-2020 Free Software Foundation, Inc. 9ed0d50c3Schristos# 10ed0d50c3Schristos# This file is free software; you can redistribute it and/or modify 11ed0d50c3Schristos# it under the terms of the GNU General Public License as published by 12ed0d50c3Schristos# the Free Software Foundation; either version 3 of the License, or 13ed0d50c3Schristos# (at your option) any later version. 14ed0d50c3Schristos# 15ed0d50c3Schristos# This program is distributed in the hope that it will be useful, 16ed0d50c3Schristos# but WITHOUT ANY WARRANTY; without even the implied warranty of 17ed0d50c3Schristos# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18ed0d50c3Schristos# GNU General Public License for more details. 19ed0d50c3Schristos# 20ed0d50c3Schristos# You should have received a copy of the GNU General Public License 21ed0d50c3Schristos# along with this program; see the file COPYING3. If not see 22ed0d50c3Schristos# <http://www.gnu.org/licenses/>. 23ed0d50c3Schristos# 24ed0d50c3Schristos 25ed0d50c3SchristosDEFS=/define=("OBJDUMP_PRIVATE_VECTORS=") 26ed0d50c3SchristosOPT=/noopt/debug 27ed0d50c3SchristosCFLAGS=$(OPT)/include=([],"../include",[-.bfd])$(DEFS)\ 28ed0d50c3Schristos /name=(as_is,shortened)\ 29ed0d50c3Schristos /prefix=(all,except=("getopt","optarg","optopt","optind","opterr"))\ 30ed0d50c3Schristos /warns=(info=(ptrmismatch,shiftcount)) 31ed0d50c3Schristos 32ed0d50c3SchristosLIBBFD = [-.bfd]libbfd.olb/lib 33ed0d50c3SchristosLIBBFD_DEP = [-.bfd]libbfd.olb 34ed0d50c3SchristosLIBIBERTY_DEP = [-.libiberty]libiberty.olb 35ed0d50c3SchristosLIBIBERTY = [-.libiberty]libiberty.olb/lib 36ed0d50c3SchristosOPCODES_DEP = [-.opcodes]libopcodes.olb 37ed0d50c3SchristosOPCODES = [-.opcodes]libopcodes.olb/lib 38ed0d50c3Schristos 3906324dcfSchristosDEBUG_OBJS = rddbg.obj,debug.obj,stabs.obj,rdcoff.obj,dwarf.obj,\ 40ed0d50c3Schristos elfcomm.obj 41ed0d50c3Schristos 42ed0d50c3SchristosBULIBS = bucomm.obj,version.obj,filemode.obj 43ed0d50c3Schristos 44ed0d50c3SchristosADDL_DEPS = $(BULIBS),$(LIBBFD_DEP),$(LIBIBERTY_DEP) 45ed0d50c3SchristosADDL_LIBS = $(BULIBS),$(LIBBFD),$(LIBIBERTY) 46ed0d50c3Schristos 47ed0d50c3SchristosSIZEOBJS = $(ADDL_DEPS),size.obj 48ed0d50c3Schristos 49ed0d50c3SchristosSTRINGSOBJS = $(ADDL_DEPS),strings.obj 50ed0d50c3Schristos 51ed0d50c3SchristosNMOBJS = $(ADDL_DEPS),nm.obj 52ed0d50c3Schristos 53ed0d50c3SchristosADDR2LINEOBJS = $(ADDL_DEPS),addr2line.obj 54ed0d50c3Schristos 55ed0d50c3SchristosOBJDUMPOBJS = objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(ADDL_DEPS),$(OPCODES_DEP) 56ed0d50c3Schristos 57ed0d50c3SchristosREADELFOBJS = readelf.obj,dwarf.obj,unwind-ia64.obj,$(ADDL_DEPS) 58ed0d50c3Schristos 59ed0d50c3Schristosall: config.h size.exe strings.exe objdump.exe nm.exe addr2line.exe 60ed0d50c3Schristos 61ed0d50c3Schristossize.exe: $(SIZEOBJS) 62ed0d50c3Schristos link/exe=$@ size.obj,$(ADDL_LIBS) 63ed0d50c3Schristos 64ed0d50c3Schristosstrings.exe: $(STRINGSOBJS) 65ed0d50c3Schristos link/exe=$@ strings.obj,$(ADDL_LIBS) 66ed0d50c3Schristos 67ed0d50c3Schristosnm.exe: $(NMOBJS) 68ed0d50c3Schristos link/exe=$@ nm.obj,$(ADDL_LIBS) 69ed0d50c3Schristos 70ed0d50c3Schristosaddr2line.exe: $(ADDR2LINEOBJS) 71ed0d50c3Schristos link/exe=$@ addr2line.obj,$(ADDL_LIBS) 72ed0d50c3Schristos 73ed0d50c3Schristosobjdump.exe: $(OBJDUMPOBJS) 74ed0d50c3Schristos link/exe=$@ objdump.obj,prdbg.obj,$(DEBUG_OBJS),$(ADDL_LIBS),$(OPCODES) 75ed0d50c3Schristos 76ed0d50c3Schristosreadelf.exe: $(READELFOBJS) 77ed0d50c3Schristos link/exe=$@ readelf.obj,dwarf.obj,unwind-ia64.obj,$(ADDL_LIBS) 78ed0d50c3Schristos 79ed0d50c3Schristosconfig.h: 80ed0d50c3Schristos $$ @configure 81ed0d50c3Schristos $(MAKE) -f makefile.vms "CC=$(CC)" 82ed0d50c3Schristos 83ed0d50c3Schristosclean: 84ed0d50c3Schristos $$ purge 85ed0d50c3Schristos $(RM) *.obj; 86ed0d50c3Schristos $(RM) *.exe; 87ed0d50c3Schristos 88ed0d50c3Schristosdistclean: clean 89ed0d50c3Schristos $(RM) config.h; 90ed0d50c3Schristos $(RM) makefile.vms; 91