1 |
# $Id$ |
2 |
|
3 |
# Implicit targets |
4 |
|
5 |
# set flags |
6 |
CC_INC_DIR_FLAGS := ${patsubst %, ${CC_INC_DIR_FLAG}%, ${L_SRC_DIR} ${L_INC_DIR} ${PKG_CC_INC_DIRS} ${L_EXT_INC_DIRS} ${CC_SYS_INC_DIRS}} |
7 |
CPP_INC_DIR_FLAGS := ${patsubst %, ${CPP_INC_DIR_FLAG}%, ${L_SRC_DIR} ${L_INC_DIR} ${PKG_CPP_INC_DIRS} ${L_EXT_INC_DIRS} ${CPP_SYS_INC_DIRS}} |
8 |
CC_DEF_FLAGS := ${patsubst %, ${CC_DEF_FLAG}%, ${L_DEFS}} |
9 |
CPP_DEF_FLAGS := ${patsubst %, ${CPP_DEF_FLAG}%, ${L_DEFS}} |
10 |
LD_LIB_DIR_FLAGS := ${patsubst %, ${LD_LIB_DIR_FLAG}%, ${L_EXT_LIB_DIRS} ${PKG_LD_LIB_DIRS} ${LD_SYS_LIB_DIRS}} |
11 |
LD_LIB_FLAGS := ${patsubst %, ${LD_LIB_FLAG}%, ${L_EXT_LIBS} ${PKG_LD_LIBS} ${LD_SYS_LIBS}} |
12 |
|
13 |
CC_FLAGS := ${CC_OPT_FLAGS} ${CC_ARCH_FLAGS} ${CC_CONFORM_FLAGS} ${CC_OBJ_FLAGS} ${CC_DIAG_FLAGS} ${CC_DEF_FLAGS} ${CC_INC_DIR_FLAGS} |
14 |
CPP_FLAGS := ${CPP_OPT_FLAGS} ${CPP_ARCH_FLAGS} ${CPP_CONFORM_FLAGS} ${CPP_OBJ_FLAGS} ${CPP_DIAG_FLAGS} ${CPP_DEF_FLAGS} ${CPP_INC_DIR_FLAGS} |
15 |
SWIG_FLAGS := ${SWIG_LANG_FLAG} ${SWIG_DOC_FLAG} ${SWIG_OPT_FLAGS} ${SWIG_INC_DIR_FLAGS} |
16 |
PYTHON_FLAGS := ${PYTHON_OPT_FLAGS} ${PYTHON_DIAG_FLAGS} |
17 |
AR_FLAGS := crus |
18 |
LD_FLAGS := ${LD_DIAG_FLAGS} ${LD_LIB_DIR_FLAGS} ${LD_LIB_FLAGS} |
19 |
|
20 |
# .a |
21 |
%.a: ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ} force |
22 |
@echo ---------------------------------------------------------------------------- |
23 |
${AR} ${AR_FLAGS} ${L_LIB_DIR}/$@ ${addprefix ${L_OBJ_DIR}/, ${sort ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ}}} ${L_EXT_OBJS} |
24 |
@echo Generated \"$@: ${sort ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ}}\". |
25 |
|
26 |
# .so |
27 |
%.so: ${CC_SHOBJ} ${CPP_SHOBJ} ${SWIG_SHOBJ} force |
28 |
@echo ---------------------------------------------------------------------------- |
29 |
${LD} ${LD_SHARE_FLAG} ${addprefix ${L_OBJ_DIR}/, ${sort ${CC_SHOBJ} ${CPP_SHOBJ} ${SWIG_SHOBJ}}} ${L_EXT_OBJS} ${LD_LIB_DIR_FLAGS} ${LD_LIB_FLAGS} ${LD_OUTPUT_FLAG} ${L_LIB_DIR}/$@ |
30 |
@echo Generated \"$@: ${sort ${CC_SHOBJ} ${CPP_SHOBJ} ${SWIG_SHOBJ}}\". |
31 |
|
32 |
# .i to .cpp |
33 |
%.cpp: %.i |
34 |
@echo ---------------------------------------------------------------------------- |
35 |
${strip ${SWIG} ${SWIG_FLAGS} ${SWIG_OUTPUT_FLAG} "${L_SRC_DIR}/${@}" $<} |
36 |
@echo Implicitly Generated \"$@: $<\". |
37 |
|
38 |
# .c to .o |
39 |
%.o: %.c |
40 |
@echo ---------------------------------------------------------------------------- |
41 |
@if test ! -e "${L_OBJ_DIR}/${@D}"; \ |
42 |
then \ |
43 |
mkdir -p "${L_OBJ_DIR}/${@D}"; \ |
44 |
fi |
45 |
${strip ${CC} ${CC_FLAGS} $< ${CC_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}} |
46 |
@echo Implicitly Compiled \"$@: $<\". |
47 |
|
48 |
# .c to .lo |
49 |
%.lo: %.c |
50 |
@echo ---------------------------------------------------------------------------- |
51 |
@if test ! -e "${L_OBJ_DIR}/${@D}"; \ |
52 |
then \ |
53 |
mkdir -p "${L_OBJ_DIR}/${@D}"; \ |
54 |
fi |
55 |
${strip ${CC} ${CC_FLAGS} ${CC_SHARE_FLAGS} $< ${CC_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}} |
56 |
@echo Implicitly Compiled \"$@: $<\". |
57 |
|
58 |
# .cpp to .o |
59 |
%.o: %.cpp |
60 |
@echo ---------------------------------------------------------------------------- |
61 |
@if test ! -e "${L_OBJ_DIR}/${@D}"; \ |
62 |
then \ |
63 |
mkdir -p "${L_OBJ_DIR}/${@D}"; \ |
64 |
fi |
65 |
${strip ${CPP} ${CPP_FLAGS} $< ${CPP_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}} |
66 |
@echo Implicitly Compiled \"$@: $<\". |
67 |
|
68 |
# .cpp to .lo |
69 |
%.lo: %.cpp |
70 |
@echo ---------------------------------------------------------------------------- |
71 |
@if test ! -e "${L_OBJ_DIR}/${@D}"; \ |
72 |
then \ |
73 |
mkdir -p "${L_OBJ_DIR}/${@D}"; \ |
74 |
fi |
75 |
${strip ${CPP} ${CPP_FLAGS} ${CPP_SHARE_FLAGS} $< ${CPP_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}} |
76 |
@echo Implicitly Compiled \"$@: $<\". |
77 |
|
78 |
%.exe: ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ} force |
79 |
@echo ---------------------------------------------------------------------------- |
80 |
${CPP} -o $@ ${addprefix ${L_OBJ_DIR}/, ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ}} ${L_EXT_OBJS} ${LD_LIB_DIR_FLAGS} ${LD_LIB_FLAGS} |
81 |
@echo Implicitly Generated \"$@: $<\". |
82 |
|
83 |
%.pyc: %.py |
84 |
@echo ---------------------------------------------------------------------------- |
85 |
${PYTHON} ${PYTHON_FLAGS} ${PYTHON_CMD_FLAG} ${PYTHON_COMPILE_CMD} |
86 |
@echo Implicitly Generated \"$@: $<\". |
87 |
|
88 |
# $Log$ |
89 |
# Revision 1.1 2004/10/26 06:53:58 jgs |
90 |
# Initial revision |
91 |
# |
92 |
# Revision 1.1.2.1 2004/09/27 06:29:16 jgs |
93 |
# moved from make/hosts |
94 |
# |
95 |
# Revision 1.1.1.1 2004/06/24 04:00:39 johng |
96 |
# Initial version of eys using boost-python. |
97 |
# |
98 |
# Revision 1.5 2003/09/30 02:55:06 davies |
99 |
# Added local makefile macro settings to replace hardcoded header files. |
100 |
# |
101 |
# Revision 1.4 2003/09/11 02:03:52 davies |
102 |
# Added makefile configurations for several platforms. |
103 |
# |
104 |
# Revision 1.3 2003/08/29 04:25:06 davies |
105 |
# Implement new feature for arbitrary external object linkage to provide a |
106 |
# mechanism for direct shared object access. |
107 |
# |
108 |
# Revision 1.2 2003/08/25 02:14:10 davies |
109 |
# Force builds of linked objects. |
110 |
# |
111 |
# Revision 1.1.1.1 2003/08/21 00:58:20 davies |
112 |
# Imported sources from Lutz Gross. |
113 |
# |