1#
2# makefile for gas
3#
4# Created by Klaus Kaempf, kkaempf@progis.de
5#
6#   Copyright (C) 2012-2017 Free Software Foundation, Inc.
7#
8# This file is free software; you can redistribute it and/or modify
9# it under the terms of the GNU General Public License as published by
10# the Free Software Foundation; either version 3 of the License, or
11# (at your option) any later version.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program; see the file COPYING3.  If not see
20# <http://www.gnu.org/licenses/>.
21#
22
23#CC=gcc
24CC=cc
25
26ifeq ($(CC),gcc)
27DEFS=
28CFLAGS=/include=([],[-.bfd],[.config],[-.include],[-])$(DEFS)
29LFLAGS=
30LIBS=,GNU_CC_LIBRARY:libgcc/lib,sys$$library:vaxcrtl.olb/lib,GNU_CC_LIBRARY:crt0.obj
31else
32#DEFS=/define=("VMS_DEBUG","DEBUG2","DEBUG3","DEBUG5","DEBUG_SYMS","DEBUG_ALPHA")
33OPT=/noopt/debug
34CFLAGS=/names=(as_is,shortened)\
35 /include=([],[-.bfd],[.config],"../include","../")$(DEFS)$(OPT)\
36 /prefix=(all,except=("getopt","optarg","optopt","optind","opterr"))
37#LFLAGS=/debug/map=as.map
38endif
39
40OBJS:=targ-cpu.obj,obj-format.obj,atof-targ.obj,app.obj,as.obj,\
41  atof-generic.obj,cond.obj,compress-debug.obj,depend.obj,expr.obj,\
42  flonum-konst.obj,flonum-copy.obj,flonum-mult.obj,\
43  frags.obj,hash.obj,input-file.obj,\
44  input-scrub.obj,literal.obj,messages.obj,output-file.obj,read.obj,\
45  subsegs.obj,symbols.obj,write.obj,listing.obj,ecoff.obj,stabs.obj,sb.obj,\
46  macro.obj,ehopt.obj,dw2gencfi.obj,dwarf2dbg.obj,remap.obj
47
48ifeq ($(ARCH),IA64)
49OBJS:=$(OBJS),te-vms.obj
50endif
51
52LIBIBERTY = [-.libiberty]libiberty.olb
53LIBBFD = [-.bfd]libbfd.olb
54LIBOPCODES = [-.opcodes]libopcodes.olb
55
56all: as.exe
57
58as.exe: $(OBJS) $(LIBOPCODES) $(LIBBFD) $(LIBIBERTY)
59	link$(LFLAGS)/exe=$@ $(OBJS),$(LIBOPCODES)/lib,$(LIBBFD)/lib,$(LIBIBERTY)/lib$(LIBS)
60
61ifneq ($(CC),gcc)
62# Work-around a DEC-C bug.
63targ-cpu.obj: targ-cpu.c targ-cpu.h
64	      $(COMPILE.c) /noopt/obj=$@ $<
65endif
66
67te-vms.obj: [.config]te-vms.c
68	      $(COMPILE.c) /obj=$@ $< + sys$$library:sys$$lib_c.tlb/lib
69
70clean:
71	$$ purge
72	$(RM) *.obj;
73	$(RM) *.exe;
74	$(RM) atof-targ.c;
75	$(RM) obj-format.c;
76	$(RM) obj-format.h;
77	$(RM) targ-env.h;
78	$(RM) targ-cpu.h;
79	$(RM) targ-cpu.c;
80