From 54cbdeb8962576e63e97c09d4e2648785d6aa0c7 Mon Sep 17 00:00:00 2001 From: Julian Seward Date: Thu, 22 Jul 2004 17:25:03 +0000 Subject: [PATCH] Makefile for use with icc. git-svn-id: svn://svn.valgrind.org/vex/trunk@103 --- VEX/Makefile-icc | 100 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 VEX/Makefile-icc diff --git a/VEX/Makefile-icc b/VEX/Makefile-icc new file mode 100644 index 000000000..037e60563 --- /dev/null +++ b/VEX/Makefile-icc @@ -0,0 +1,100 @@ + +PUB_HEADERS = pub/libvex_basictypes.h \ + pub/libvex_ir.h \ + pub/libvex.h + +PRIV_HEADERS = priv/host-x86/x86host_defs.h \ + priv/host-generic/host_regs.h \ + priv/main/vex_globals.h \ + priv/main/vex_util.h \ + priv/guest-x86/x86guest_defs.h + +LIB_OBJS = priv/ir/ir_defs.o \ + priv/main/vex_main.o \ + priv/main/vex_globals.o \ + priv/main/vex_util.o \ + priv/host-x86/x86host_defs.o \ + priv/host-x86/isel_x86.o \ + priv/host-generic/host_regs.o \ + priv/host-generic/reg_alloc.o \ + priv/guest-x86/x86toIR.o + +PUB_INCLUDES = -Ipub + +PRIV_INCLUDES = -Ipriv/ir -Ipriv/main -Ipriv/host-generic \ + -Ipriv/host-x86 -Ipriv/guest-x86 + +APP_OBJS = test_main.o + + +#CC = gcc341 +#CCFLAGS = -g -Wall -Wshadow + +CC = icc +CCFLAGS = -g -Wbrief -Wall -wd981 -wd279 -wd1287 -wd869 \ + -wd810 -wd1419 -wd181 -wd111 -wd167 +# 981: operands are evaluated in unspecified order +# 279: controlling expression is constant +# 1287: invalid attribute for parameter +# 869: parameter "..." was never referenced +# 810: conversion from "int" to "Char={char}" may lose significant bits +# 181: argument is incompatible with corresponding format string conversion +# 111: statement is unreachable +# 167: argument of type unsigned char incompatible with formal of type char +# (the above are for icc 8.0 -- 8.0.0.55 I think) + +all: libvex.a $(APP_OBJS) + $(CC) $(CCFLAGS) -o vex $(APP_OBJS) libvex.a + +libvex.a: $(LIB_OBJS) + rm -f libvex.a + ar clq libvex.a $(LIB_OBJS) + +clean: + rm -f $(APP_OBJS) $(LIB_OBJS) libvex.a vex + + + + +ALL_HEADERS = $(PUB_HEADERS) $(PRIV_HEADERS) +ALL_INCLUDES = $(PUB_INCLUDES) $(PRIV_INCLUDES) + +test_main.o: $(PUB_HEADERS) test_main.c + $(CC) $(CCFLAGS) $(PUB_INCLUDES) -o test_main.o \ + -c test_main.c + +priv/ir/ir_defs.o: $(ALL_HEADERS) priv/ir/ir_defs.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/ir/ir_defs.o \ + -c priv/ir/ir_defs.c + +priv/main/vex_main.o: $(ALL_HEADERS) priv/main/vex_main.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/main/vex_main.o \ + -c priv/main/vex_main.c + +priv/main/vex_globals.o: $(ALL_HEADERS) priv/main/vex_globals.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/main/vex_globals.o \ + -c priv/main/vex_globals.c + +priv/main/vex_util.o: $(ALL_HEADERS) priv/main/vex_util.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/main/vex_util.o \ + -c priv/main/vex_util.c + +priv/host-x86/x86host_defs.o: $(ALL_HEADERS) priv/host-x86/x86host_defs.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/host-x86/x86host_defs.o \ + -c priv/host-x86/x86host_defs.c + +priv/host-x86/isel_x86.o: $(ALL_HEADERS) priv/host-x86/isel_x86.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/host-x86/isel_x86.o \ + -c priv/host-x86/isel_x86.c + +priv/host-generic/host_regs.o: $(ALL_HEADERS) priv/host-generic/host_regs.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/host-generic/host_regs.o \ + -c priv/host-generic/host_regs.c + +priv/host-generic/reg_alloc.o: $(ALL_HEADERS) priv/host-generic/reg_alloc.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/host-generic/reg_alloc.o \ + -c priv/host-generic/reg_alloc.c + +priv/guest-x86/x86toIR.o: $(ALL_HEADERS) priv/guest-x86/x86toIR.c + $(CC) $(CCFLAGS) $(ALL_INCLUDES) -o priv/guest-x86/x86toIR.o \ + -c priv/guest-x86/x86toIR.c \ No newline at end of file