]> git.proxmox.com Git - mirror_edk2.git/blob - Tools/Source/TianoTools/CompressDll/build.xml
28cd4aec74591ba1138f24600cbdf38c79a276df
[mirror_edk2.git] / Tools / Source / TianoTools / CompressDll / build.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 -->
12 <project default="GenTool" basedir=".">
13 <!--
14 EDK GenDepex Tool
15 Copyright (c) 2006, Intel Corporation
16 -->
17
18 <property name="WORKSPACE" value="${env.WORKSPACE}"/>
19 <property name="ToolName" value="CompressDll"/>
20 <property name="LibName" value="CompressDll"/>
21 <property name="FileSet" value="CompressDll.c CompressDll.h"/>
22 <property name="LibFileSet" value="CompressDll.c DepexParser.h"/>
23
24 <taskdef resource="cpptasks.tasks"/>
25 <typedef resource="cpptasks.types"/>
26 <taskdef resource="net/sf/antcontrib/antlib.xml"/>
27
28 <property name="LINK_OUTPUT_TYPE" value="static"/>
29 <property name="BUILD_DIR" value="${WORKSPACE}/Tools/Source/TianoTools/${ToolName}/tmp"/>
30
31 <target name="GenTool" depends="init,Lib" >
32 <echo message="Building the EDK Tool: ${ToolName}"/>
33 </target>
34
35 <target name="init">
36 <echo message="The EDK Tool: ${ToolName}"/>
37 <mkdir dir="${BUILD_DIR}"/>
38 <if>
39 <equals arg1="${GCC}" arg2="cygwin"/>
40 <then>
41 <echo message="Cygwin Family"/>
42 <property name="ToolChain" value="gcc"/>
43 </then>
44 <elseif>
45 <os family="dos"/>
46 <then>
47 <echo message="Windows Family"/>
48 <property name="ToolChain" value="msvc"/>
49 </then>
50 </elseif>
51 <elseif>
52 <os family="unix"/>
53 <then>
54 <echo message="UNIX Family"/>
55 <property name="ToolChain" value="gcc"/>
56 </then>
57 </elseif>
58 <else>
59 <echo>Unsupported Operating System
60 Please Contact Intel Corporation</echo>
61 </else>
62 </if>
63 <if>
64 <equals arg1="${ToolChain}" arg2="msvc"/>
65 <then>
66 <property name="ext_static" value=".lib"/>
67 <property name="ext_dynamic" value=".dll"/>
68 <property name="ext_exe" value=".exe"/>
69 </then>
70 <elseif>
71 <equals arg1="${ToolChain}" arg2="gcc"/>
72 <then>
73 <property name="ext_static" value=".a"/>
74 <property name="ext_dynamic" value=".so"/>
75 <property name="ext_exe" value=""/>
76 </then>
77 </elseif>
78 </if>
79 </target>
80
81 <target name="Lib" depends="init">
82 <cc name="${ToolChain}"
83 objdir="${BUILD_DIR}"
84 outtype="shared"
85 optimize="speed"
86 outfile="${BIN_DIR}/${LibName}"
87 outputfileproperty="result"
88 >
89 <fileset dir="${ToolName}" includes="${LibFileSet}" defaultexcludes="TRUE" excludes="*.xml *.inf"/>
90 <includepath path="${PACKAGE_DIR}/Include"/>
91 <includepath path="${PACKAGE_DIR}/Include/${HostArch}"/>
92 <includepath path="${PACKAGE_DIR}/Common"/>
93 <includepath path="${env.JAVA_HOME}/include"/>
94 <includepath path="${env.JAVA_HOME}/include/linux" if="gcc"/>
95 <includepath path="${env.JAVA_HOME}/include/win32" if="windows"/>
96 <libset dir="${LIB_DIR}" libs="CommonTools"/>
97 <syslibset libs="kernel32" unless="gcc"/>
98 </cc>
99 <copy file="${result}" tofile="${BIN_DIR}/CompressDll.dll"/>
100 <chmod file="${BIN_DIR}/CompressDll.dll" perm="ugo+x"/>
101 </target>
102
103 <target name="clean" depends="init">
104 <echo message="Removing Intermediate Files Only"/>
105 <delete>
106 <fileset dir="${BUILD_DIR}" includes="*.obj"/>
107 </delete>
108 </target>
109
110 <target name="cleanall" depends="init">
111 <echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
112 <delete dir="${BUILD_DIR}">
113 <fileset dir="${BIN_DIR}" includes="${ToolName}${ext_dynamic}"/>
114 </delete>
115 </target>
116 </project>