/[escript]/trunk/make/Makefile.implicit
ViewVC logotype

Contents of /trunk/make/Makefile.implicit

Parent Directory Parent Directory | Revision Log Revision Log


Revision 150 - (show annotations)
Thu Sep 15 03:44:45 2005 UTC (14 years, 1 month ago) by jgs
Original Path: trunk/esys2/make/Makefile.implicit
File size: 5515 byte(s)
Merge of development branch dev-02 back to main trunk on 2005-09-15

1 # $Id$
2
3 # Implicit targets
4 # Define rules for generating/compiling each type of target file
5
6 # set flags
7 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}}
8 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}}
9 CC_DEF_FLAGS := ${patsubst %, ${CC_DEF_FLAG}%, ${L_DEFS} ${PKG_CC_DEFS}}
10 CPP_DEF_FLAGS := ${patsubst %, ${CPP_DEF_FLAG}%, ${L_DEFS} ${PKG_CPP_DEFS}}
11 LD_LIB_DIR_FLAGS := ${patsubst %, ${LD_LIB_DIR_FLAG}%, ${L_EXT_LIB_DIRS} ${PKG_LD_LIB_DIRS} ${LD_SYS_LIB_DIRS}}
12 LD_LIB_FLAGS := ${patsubst %, ${LD_LIB_FLAG}%, ${L_EXT_LIBS} ${PKG_LD_LIBS} ${LD_SYS_LIBS}}
13
14 CC_FLAGS := ${CC_OPT_FLAGS} ${CC_ARCH_FLAGS} ${CC_CONFORM_FLAGS} ${CC_OBJ_FLAGS} ${CC_DIAG_FLAGS} ${CC_DEF_FLAGS} ${CC_INC_DIR_FLAGS}
15 CPP_FLAGS := ${CPP_OPT_FLAGS} ${CPP_ARCH_FLAGS} ${CPP_CONFORM_FLAGS} ${CPP_OBJ_FLAGS} ${CPP_DIAG_FLAGS} ${CPP_DEF_FLAGS} ${CPP_INC_DIR_FLAGS}
16 SWIG_FLAGS := ${SWIG_LANG_FLAG} ${SWIG_DOC_FLAG} ${SWIG_OPT_FLAGS} ${SWIG_INC_DIR_FLAGS}
17 PYTHON_FLAGS := ${PYTHON_OPT_FLAGS} ${PYTHON_DIAG_FLAGS}
18 AR_FLAGS := ${AR_OPTION_FLAGS}
19 LD_FLAGS := ${LD_DIAG_FLAGS} ${LD_LIB_DIR_FLAGS} ${LD_LIB_FLAGS}
20
21 # .o to .a
22 %.a: ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ} force
23 @echo ----------------------------------------------------------------------------
24 ${AR} ${AR_FLAGS} ${L_LIB_DIR}/$@ ${addprefix ${L_OBJ_DIR}/, ${sort ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ}}} ${L_EXT_OBJS}
25 @echo Generated \"$@: ${sort ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ}}\".
26
27 # .lo to .so
28 %.so: ${CC_SHOBJ} ${CPP_SHOBJ} ${SWIG_SHOBJ} force
29 @echo ----------------------------------------------------------------------------
30 ${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}/$@
31 @echo Generated \"$@: ${sort ${CC_SHOBJ} ${CPP_SHOBJ} ${SWIG_SHOBJ}}\".
32
33 # .i to .cpp
34 %.cpp: %.i
35 @echo ----------------------------------------------------------------------------
36 ${strip ${SWIG} ${SWIG_FLAGS} ${SWIG_OUTPUT_FLAG} "${L_SRC_DIR}/${@}" $<}
37 @echo Generated \"$@: $<\".
38
39 # .c to .o
40 %.o: %.c
41 @echo ----------------------------------------------------------------------------
42 @if test ! -e "${L_OBJ_DIR}/${@D}"; \
43 then \
44 mkdir -p "${L_OBJ_DIR}/${@D}"; \
45 fi
46 ${strip ${CC} ${CC_FLAGS} $< ${CC_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}}
47 @echo Compiled \"$@: $<\".
48
49 # .c to .lo
50 %.lo: %.c
51 @echo ----------------------------------------------------------------------------
52 @if test ! -e "${L_OBJ_DIR}/${@D}"; \
53 then \
54 mkdir -p "${L_OBJ_DIR}/${@D}"; \
55 fi
56 ${strip ${CC} ${CC_FLAGS} ${CC_SHARE_FLAGS} $< ${CC_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}}
57 @echo Compiled \"$@: $<\".
58
59 # .cpp to .o
60 %.o: %.cpp
61 @echo ----------------------------------------------------------------------------
62 @if test ! -e "${L_OBJ_DIR}/${@D}"; \
63 then \
64 mkdir -p "${L_OBJ_DIR}/${@D}"; \
65 fi
66 ${strip ${CPP} ${CPP_FLAGS} $< ${CPP_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}}
67 @echo Compiled \"$@: $<\".
68
69 # .cpp to .lo
70 %.lo: %.cpp
71 @echo ----------------------------------------------------------------------------
72 @if test ! -e "${L_OBJ_DIR}/${@D}"; \
73 then \
74 mkdir -p "${L_OBJ_DIR}/${@D}"; \
75 fi
76 ${strip ${CPP} ${CPP_FLAGS} ${CPP_SHARE_FLAGS} $< ${CPP_OUTPUT_FLAG} ${L_OBJ_DIR}/${@}}
77 @echo Compiled \"$@: $<\".
78
79 # .o to .exe
80 %.exe: ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ} force
81 @echo ----------------------------------------------------------------------------
82 ${CPP} -o $@ ${addprefix ${L_OBJ_DIR}/, ${CC_OBJ} ${CPP_OBJ} ${SWIG_OBJ}} ${L_EXT_OBJS} ${LD_LIB_DIR_FLAGS} ${LD_LIB_FLAGS}
83 @echo Linked \"$@: $<\".
84
85 # .py to .pyc
86 %.pyc: %.py
87 @echo ----------------------------------------------------------------------------
88 ${PYTHON} ${PYTHON_FLAGS} ${PYTHON_CMD_FLAG} ${PYTHON_COMPILE_CMD}
89 @echo Compiled \"$@: $<\".
90
91 # $Log$
92 # Revision 1.3 2005/09/15 03:44:32 jgs
93 # Merge of development branch dev-02 back to main trunk on 2005-09-15
94 #
95 # Revision 1.2.2.2 2005/09/08 03:10:17 jgs
96 # minor, but interesting, typo was causing CPP_FLAGS to be undefined
97 #
98 # Revision 1.2.2.1 2005/09/07 06:26:23 gross
99 # the solver from finley are put into the standalone package paso now
100 #
101 # Revision 1.2 2005/06/09 05:38:02 jgs
102 # Merge of development branch back to main trunk on 2005-06-09
103 #
104 # Revision 1.1.1.1.2.1 2005/05/17 01:31:15 jgs
105 # set L_INSTLIB_DIR and L_PYTH_DIR defaults relative to ESYS_ROOT
106 #
107 # Revision 1.1.1.1 2004/10/26 06:53:58 jgs
108 # initial import of project esys2
109 #
110 # Revision 1.2 2004/09/23 01:48:45 jgs
111 # make: augmented Makefiles with comments throughout
112 #
113 # Makefile.default - changed order of includes for clarity
114 # Makfile.phony - reordered phony targets
115 # - added target "all" - now first target to be encountered
116 #
117 # Revision 1.1.1.1 2004/06/24 04:00:39 johng
118 # Initial version of eys using boost-python.
119 #
120 # Revision 1.5 2003/09/30 02:55:06 davies
121 # Added local makefile macro settings to replace hardcoded header files.
122 #
123 # Revision 1.4 2003/09/11 02:03:52 davies
124 # Added makefile configurations for several platforms.
125 #
126 # Revision 1.3 2003/08/29 04:25:06 davies
127 # Implement new feature for arbitrary external object linkage to provide a
128 # mechanism for direct shared object access.
129 #
130 # Revision 1.2 2003/08/25 02:14:10 davies
131 # Force builds of linked objects.
132 #
133 # Revision 1.1.1.1 2003/08/21 00:58:20 davies
134 # Imported sources from Lutz Gross.
135 #

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.26