WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-->\r
<project name="common">\r
+ <!--\r
+ Macro for intialize some properties. This Macro build will be called before source file build. \r
+ -->\r
+ <macrodef name="Build_Init">\r
+ <sequential>\r
+ <var name="OBJECTS" value="" />\r
+ <var name="SDB_FILES" value="" />\r
+ </sequential>\r
+ </macrodef>\r
+\r
+\r
<!--\r
macro definitions for building files with different types\r
-->\r
<EXTRA.INC/>\r
<argument value="${CC_FLAGS}"/>\r
<EXTRA.ARG/>\r
- <fileset casesensitive="off" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</command>\r
</cc>\r
</sequential>\r
</OnDependency>\r
+ <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->\r
+ <if>\r
+ <equals arg1="@{FILEPATH}" arg2="." />\r
+ <then>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILENAME}.obj" />\r
+ </then>\r
+ <else>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />\r
+ </else>\r
+ </if>\r
</sequential>\r
</macrodef>\r
\r
<EXTRA.INC/>\r
<argument value="${CC_FLAGS}"/>\r
<EXTRA.ARG/>\r
- <fileset casesensitive="off" file="${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <fileset casesensitive="on" file="${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</command>\r
</cc>\r
</sequential>\r
</OnDependency>\r
+ <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->\r
+ <if>\r
+ <equals arg1="@{FILEPATH}" arg2="." />\r
+ <then>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILENAME}.obj" />\r
+ </then>\r
+ <else>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />\r
+ </else>\r
+ </if>\r
</sequential>\r
</macrodef>\r
\r
outputFile="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i">\r
<EXTRA.INC/>\r
<argument value="${PP_FLAGS}"/>\r
- <fileset casesensitive="off" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</command>\r
</cc>\r
\r
<command type="PP" cmd="${PP}" workdir="${DEST_DIR_OUTPUT}/@{FILEPATH}" family="${PP_FAMILY}">\r
<EXTRA.INC.1/>\r
<argument value="${PP_FLAGS}"/>\r
- <fileset casesensitive="off" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</command>\r
</cc>\r
\r
<argument value="${ASM_FLAGS}"/>\r
<EXTRA.ARG.1/>\r
\r
- <fileset casesensitive="off" file="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>\r
+ <fileset casesensitive="on" file="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>\r
</command>\r
</cc>\r
</sequential>\r
</OnDependency>\r
+ <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->\r
+ <if>\r
+ <equals arg1="@{FILEPATH}" arg2="." />\r
+ <then>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILENAME}.obj" />\r
+ </then>\r
+ <else>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />\r
+ </else>\r
+ </if>\r
</sequential>\r
</macrodef>\r
\r
<argument value="${ASM_FLAGS}"/>\r
<EXTRA.ARG.1/>\r
\r
- <fileset casesensitive="off" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</command>\r
</cc>\r
</sequential>\r
</OnDependency>\r
+ <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->\r
+ <if>\r
+ <equals arg1="@{FILEPATH}" arg2="." />\r
+ <then>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILENAME}.obj" />\r
+ </then>\r
+ <else>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />\r
+ </else>\r
+ </if>\r
</sequential>\r
</macrodef>\r
\r
<command type="PP" cmd="${PP}" workdir="${DEST_DIR_OUTPUT}/@{FILEPATH}" family="${PP_FAMILY}">\r
<EXTRA.INC.1/>\r
<argument value="${PP_FLAGS}"/>\r
- <fileset casesensitive="off" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</command>\r
</cc>\r
\r
<EXTRA.INC.1/>\r
<argument value="${ASM_FLAGS}"/>\r
<EXTRA.ARG.1/>\r
- <fileset casesensitive="off" file="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>\r
+ <fileset casesensitive="on" file="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.i"/>\r
</command>\r
</cc>\r
</sequential>\r
</OnDependency>\r
+ <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->\r
+ <if>\r
+ <equals arg1="@{FILEPATH}" arg2="." />\r
+ <then>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILENAME}.obj" />\r
+ </then>\r
+ <else>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />\r
+ </else>\r
+ </if>\r
</sequential>\r
</macrodef>\r
\r
<EXTRA.ARG/>\r
<OutputFile File="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}.obj"/>\r
\r
- <fileset casesensitive="off" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <fileset casesensitive="on" file="${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</command>\r
</cc>\r
</sequential>\r
\r
<OnDependency>\r
<sourcefiles>\r
- <file list="${OBJECTS}"/>\r
+ <fileset dir="${DEST_DIR_OUTPUT}" includes="${OBJECTS}" />\r
</sourcefiles>\r
<targetfiles>\r
<file name="${BIN_DIR}/@{FILENAME}.lib"/>\r
outputFile="${BIN_DIR}/@{FILENAME}.lib">\r
<argument value="${SLINK_FLAGS}"/>\r
\r
- <fileset casesensitive="off" dir="${DEST_DIR_OUTPUT}" includes="**/*.obj"/>\r
+ <fileset dir="${DEST_DIR_OUTPUT}" includes="${OBJECTS}"/>\r
</command>\r
</cc>\r
</sequential>\r
outputFile="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Strings.obj">\r
<argument value="${CC_FLAGS}"/>\r
<EXTRA.INC />\r
- <fileset casesensitive="off" file="${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>\r
+ <fileset casesensitive="on" file="${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}Strings.c"/>\r
</command>\r
</cc>\r
</sequential>\r
</OnDependency>\r
-\r
+ <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->\r
+ <if>\r
+ <equals arg1="@{FILEPATH}" arg2="." />\r
+ <then>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILENAME}Strings.obj" />\r
+ </then>\r
+ <else>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILEPATH}/@{FILENAME}Strings.obj" />\r
+ </else>\r
+ </if>\r
</sequential>\r
</macrodef>\r
\r
<argument value="${CC_FLAGS}"/>\r
<EXTRA.INC/>\r
<EXTRA.ARG/>\r
- <fileset casesensitive="off" file="${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.c"/>\r
+ <fileset casesensitive="on" file="${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.c"/>\r
</command>\r
</cc>\r
<delete file="${PLATFORM_DIR}/@{FILENAME}.i" />\r
</sequential>\r
</OnDependency>\r
+ <!-- Since fileset can't scan file start with ./, remove ./ in previous. -->\r
+ <if>\r
+ <equals arg1="@{FILEPATH}" arg2="." />\r
+ <then>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILENAME}.obj" />\r
+ </then>\r
+ <else>\r
+ <var name="OBJECTS" value="${OBJECTS} @{FILEPATH}/@{FILENAME}.obj" />\r
+ </else>\r
+ </if>\r
</sequential>\r
</macrodef>\r
\r
<element name="EXTRA.ARG" optional="yes"/>\r
\r
<sequential>\r
- <echo message="Ignore DUMMY file ${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
+ <echo message="Ignoring ${MODULE_DIR}/@{FILEPATH}/@{FILENAME}.@{FILEEXT}"/>\r
</sequential>\r
</macrodef>\r
\r
<OnDependency>\r
<sourcefiles>\r
<file list="${LIBS}"/>\r
+ <fileset dir="${DEST_DIR_OUTPUT}" includes="${OBJECTS}" />\r
</sourcefiles>\r
<targetfiles>\r
<file name="${DEST_DIR_DEBUG}/@{FILEPATH}/@{FILENAME}.dll"/>\r
outputFile="${DEST_DIR_OUTPUT}/@{FILEPATH}/@{FILENAME}Local.lib">\r
<argument value="${SLINK_FLAGS}"/>\r
\r
- <fileset casesensitive="off" dir="${DEST_DIR_OUTPUT}" includes="**/*.obj"/>\r
+ <fileset dir="${DEST_DIR_OUTPUT}" includes="${OBJECTS}"/>\r
</command>\r
</cc>\r
<cc userdefine="on">\r