#
-# Makefile for libopcodes under openVMS/AXP
+# Makefile for libopcodes under openVMS VAX and Alpha
#
# For use with gnu-make for vms
#
-# Created by Klaus Kaempf, kkaempf@progis.de
+# Created by Klaus K"ampf, kkaempf@progis.de
#
#
-CC=gcc
-
-OBJS=alpha-dis.obj,dis-buf.obj,disassemble.obj
+ifeq ($(ARCH),ALPHA)
+OBJS=alpha-dis.obj,alpha-opc.obj,dis-init.obj,dis-buf.obj,disassemble.obj
+FORMAT=OBJ_EVAX
+ARCHDEF="ARCH_alpha"
+else
+OBJS=vax-dis.obj,dis-buf.obj,disassemble.obj
+FORMAT=OBJ_VAX
+ARCHDEF="ARCH_vax"
+endif
ifeq ($(CC),gcc)
+DEFS=/define=($(FORMAT))
CFLAGS=/include=([],[-.include],[-.bfd])$(DEFS)
-DEFS=/define=(VMS_ASMCODE=1)
else
-CFLAGS=/noopt/debug/include=([],[-.include],[-.bfd])$(DEFS)
-DEFS=/define=(VMS_ASMCODE=1)
+DEFS=/define=($(FORMAT))
+CFLAGS=/noopt/debug/include=([],[-.include],[-.bfd])$(DEFS)\
+/name=(as_is,shortened)/warnings=disable=(missingreturn,longextern)
endif
libopcodes.olb: sysdep.h $(OBJS)
lib/create libopcodes *.obj
disassemble.obj: disassemble.c
- $(CC)$(CFLAGS)/define=("ARCH_alpha") $<
+ $(CC)$(CFLAGS)/define=($(ARCHDEF)) $<
-alpha-dis.obj: alpha-dis.c alpha-opc.h
-
-sysdep.h: [-.bfd.hosts]alphavms.h
+sysdep.h: [-.bfd.hosts]$(ARCH)vms.h
$(CP) $< $@
+
+clean:
+ $$ purge
+ $(RM) *.obj;
+ $(RM) sysdep.h;
+ $(RM) libopcodes.olb;