diff --git a/com.amd.aparapi.jni/build.xml b/com.amd.aparapi.jni/build.xml index efe8abbb3316913510a3fc409899b951a8f82ff1..cee8ecce4bfb60dfdccb3a7ca2ae8c7a91bee6c7 100644 --- a/com.amd.aparapi.jni/build.xml +++ b/com.amd.aparapi.jni/build.xml @@ -21,15 +21,14 @@ First consider editing the properties in build.properties <property name="ant.build.javac.target" value="1.7"/> <property name="amd.app.sdk.version" value="2.9-1"/> + <property environment="env" /> - - <!-- uncomment this if you want to use mingw! --> - <!--<property name="mingw.dir" value="c:\\MinGW"/>--> <!-- Check for AMD APP SDK --> <echo> - Since AMD APP SDK 2.9 you can have multiple versions installed/co-exist on same machine, - so AMD introduced a completely new naming convention for their installation directories + Note: Since AMD APP SDK 2.9 you can have multiple versions installed/co-exist on same machine, + so AMD introduced a completely new naming convention for their installation directories + For example C:/Program Files/AMD APP SDK/2.9-1 </echo> <target name="init"> @@ -56,7 +55,7 @@ First consider editing the properties in build.properties </condition> <available property="linux.amd.app.sdk.exists" file="/opt/AMDAPPSDK-${amd.app.sdk.version}" type="dir"/> - <condition property="amd.app.sdk.dir" value="/opt/AMDAPPSDK-${amd.app.sdk.version}"> + <condition property="amd.app.sdk.dir" value="/opt/AMDAPPSDK-${amd.app.sdk.version}¬"> <and> <os family="unix" /> <not> @@ -72,227 +71,142 @@ First consider editing the properties in build.properties </and> </condition> - <echo message=" amd.app.sdk.dir ${amd.app.sdk.dir}"/> + <echo message="amd.app.sdk.dir ${amd.app.sdk.dir}"/> - <!-- Check for Visual Studio --> + <!-- Check for Visual Studio Compiler --> <!-- This needs to be in descending order to properly handle multiple installations --> - - <available property="msvc.32.11.0.exists" file="C:/Program Files (x86)/Microsoft Visual Studio 11.0\VC\bin" type="dir"/> - <condition property="msvc.dir" value="c:/Program Files (x86)/Microsoft Visual Studio 11.0"> + <available property="msvc.32.12.0.exists" file="C:/Program Files/Microsoft Visual Studio 12.0\VC\bin" type="dir"/> + <condition property="msvc.dir" value="c:/Program Files/Microsoft Visual Studio 12.0"> <and> - <not> - <or> - <os arch="x86" /> - <os arch="i386" /> - </or> - </not> <os family="windows" /> - <isset property="msvc.32.11.0.exists" /> + <isset property="msvc.32.12.0.exists" /> <not> <isset property="msvc.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.64.10.0.exists" file="c:/Program Files/Microsoft Visual Studio 10.0\vc\bin" type="dir"/> - <condition property="msvc.dir" value="c:/Program Files/Microsoft Visual Studio 10.0"> + <available property="msvc.64.12.0.exists" file="C:/Program Files (x86)/Microsoft Visual Studio 12.0\VC\bin" type="dir"/> + <condition property="msvc.dir" value="c:/Program Files (x86)/Microsoft Visual Studio 12.0"> <and> - <or> - <os arch="x86" /> - <os arch="i386" /> - </or> <os family="windows" /> - <isset property="msvc.64.10.0.exists" /> + <isset property="msvc.64.12.0.exists" /> <not> <isset property="msvc.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.32.10.0.exists" file="c:/Program Files (x86)/Microsoft Visual Studio 10.0\vc\bin" type="dir"/> - <condition property="msvc.dir" value="c:/Program Files (x86)/Microsoft Visual Studio 10.0"> + <available property="msvc.32.11.0.exists" file="C:/Program Files/Microsoft Visual Studio 11.0\VC\bin" type="dir"/> + <condition property="msvc.dir" value="c:/Program Files/Microsoft Visual Studio 11.0"> <and> - <not> - <or> - <os arch="x86" /> - <os arch="i386" /> - </or> - </not> <os family="windows" /> - <isset property="msvc.32.10.0.exists" /> + <isset property="msvc.32.11.0.exists" /> <not> <isset property="msvc.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.32.9.0.exists" file="c:/Program Files/Microsoft Visual Studio 9.0\vc\bin" type="dir"/> - <condition property="msvc.dir" value="c:/Program Files/Microsoft Visual Studio 9.0"> + <available property="msvc.64.11.0.exists" file="C:/Program Files (x86)/Microsoft Visual Studio 11.0\VC\bin" type="dir"/> + <condition property="msvc.dir" value="c:/Program Files (x86)/Microsoft Visual Studio 11.0"> <and> - <or> - <os arch="x86" /> - <os arch="i386" /> - </or> <os family="windows" /> - <isset property="msvc.32.9.0.exists" /> + <isset property="msvc.64.11.0.exists" /> <not> <isset property="msvc.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - - <!-- Check for SDKs --> - <!-- This needs to be in descending order to properly handle multiple installations --> - - <!-- <available property="msvc.sdk.8.0A.32.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v8.0A" type="dir"/> - <condition property="msvc.sdk.dir" value="C:/Program Files (x86)/Microsoft SDKs/Windows/v8.0A"> + + <available property="msvc.32.10.0.exists" file="c:/Program Files/Microsoft Visual Studio 10.0\vc\bin" type="dir"/> + <condition property="msvc.dir" value="c:/Program Files/Microsoft Visual Studio 10.0"> <and> <os family="windows" /> - <isset property="msvc.sdk.8.0A.32.exists" /> - <not> - <isset property="msvc.sdk.dir" /> - </not> + <isset property="msvc.32.10.0.exists" /> <not> - <isset property="mingw.dir" /> + <isset property="msvc.dir" /> </not> </and> </condition> - <available property="msvc.sdk.8.0.32.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v8.0" type="dir"/> - <condition property="msvc.sdk.dir" value="C:/Program Files (x86)/Microsoft SDKs/Windows/v8.0"> + <available property="msvc.64.10.0.exists" file="c:/Program Files (x86)/Microsoft Visual Studio 10.0\vc\bin" type="dir"/> + <condition property="msvc.dir" value="c:/Program Files (x86)/Microsoft Visual Studio 10.0"> <and> <os family="windows" /> - <isset property="msvc.sdk.8.0.32.exists" /> - <not> - <isset property="msvc.sdk.dir" /> - </not> + <isset property="msvc.64.10.0.exists" /> <not> - <isset property="mingw.dir" /> + <isset property="msvc.dir" /> </not> </and> - </condition> --> - - <available property="msvc.sdk.7.1A.exists" file="C:/Program Files/Microsoft SDKs/Windows/v7.1A" type="dir"/> + </condition> + + <!-- Check for SDKs --> + <!-- This needs to be in descending order to properly handle multiple installations --> + + <available property="msvc.sdk.7.1A.32.exists" file="C:/Program Files/Microsoft SDKs/Windows/v7.1A" type="dir"/> <condition property="msvc.sdk.dir" value="C:/Program Files/Microsoft SDKs/Windows/v7.1A"> <and> <os family="windows" /> - <isset property="msvc.sdk.7.1A.exists" /> + <isset property="msvc.sdk.7.1A.32.exists" /> <not> <isset property="msvc.sdk.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.sdk.7.1A.32.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.1A" type="dir"/> + <available property="msvc.sdk.7.1A.64.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.1A" type="dir"/> <condition property="msvc.sdk.dir" value="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.1A"> <and> <os family="windows" /> - <isset property="msvc.sdk.7.1A.32.exists" /> + <isset property="msvc.sdk.7.1A.64.exists" /> <not> <isset property="msvc.sdk.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.sdk.7.1.exists" file="C:/Program Files/Microsoft SDKs/Windows/v7.1" type="dir"/> + <available property="msvc.sdk.7.1.32.exists" file="C:/Program Files/Microsoft SDKs/Windows/v7.1" type="dir"/> <condition property="msvc.sdk.dir" value="C:/Program Files/Microsoft SDKs/Windows/v7.1"> <and> <os family="windows" /> - <isset property="msvc.sdk.7.1.exists" /> + <isset property="msvc.sdk.7.1.32.exists" /> <not> <isset property="msvc.sdk.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.sdk.7.1.32.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.1" type="dir"/> + <available property="msvc.sdk.7.1.64.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.1" type="dir"/> <condition property="msvc.sdk.dir" value="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.1"> <and> <os family="windows" /> - <isset property="msvc.sdk.7.1.32.exists" /> + <isset property="msvc.sdk.7.1.64.exists" /> <not> <isset property="msvc.sdk.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.sdk.7.0A.exists" file="C:/Program Files/Microsoft SDKs/Windows/v7.0A" type="dir"/> + <available property="msvc.sdk.7.0A.32.exists" file="C:/Program Files/Microsoft SDKs/Windows/v7.0A" type="dir"/> <condition property="msvc.sdk.dir" value="C:/Program Files/Microsoft SDKs/Windows/v7.0A"> - <and> - <os family="windows" /> - <isset property="msvc.sdk.7.0A.exists" /> - <not> - <isset property="msvc.sdk.dir" /> - </not> - <not> - <isset property="mingw.dir" /> - </not> - </and> - </condition> - - <available property="msvc.sdk.7.0A.32.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A" type="dir"/> - <condition property="msvc.sdk.dir" value="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A"> <and> <os family="windows" /> <isset property="msvc.sdk.7.0A.32.exists" /> <not> <isset property="msvc.sdk.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> - </and> - </condition> - - <available property="msvc.sdk.7.0.exists" file="C:/Program Files/Microsoft SDKs/Windows/v7.0" type="dir"/> - <condition property="msvc.sdk.dir" value="C:/Program Files/Microsoft SDKs/Windows/v7.0"> - <and> - <os family="windows" /> - <isset property="msvc.sdk.7.0.exists" /> - <not> - <isset property="msvc.sdk.dir" /> - </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> - <available property="msvc.sdk.6.0A.exists" file="C:/Program Files/Microsoft SDKs/Windows/v6.0A" type="dir"/> - <condition property="msvc.sdk.dir" value="C:/Program Files/Microsoft SDKs/Windows/v6.0A"> + <available property="msvc.sdk.7.0A.64.exists" file="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A" type="dir"/> + <condition property="msvc.sdk.dir" value="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A"> <and> <os family="windows" /> - <isset property="msvc.sdk.6.0A.exists" /> + <isset property="msvc.sdk.7.0A.64.exists" /> <not> <isset property="msvc.sdk.dir" /> </not> - <not> - <isset property="mingw.dir" /> - </not> </and> </condition> @@ -301,7 +215,6 @@ First consider editing the properties in build.properties </target> <target name="check" depends="init"> - <fail message="Error:"> <condition> <and> @@ -372,30 +285,6 @@ First consider editing the properties in build.properties At present msvc.sdk.dir is set (to ${msvc.sdk.dir}) but that dir does not exist ]]> </fail> - - - <available file="${mingw.dir}" type="dir" property="mingw.dir.exists" /> - <fail message="Error:"> - <condition> - <and> - <os family="windows" /> - <isset property="mingw.dir" /> - <not> - <isset property="mingw.dir.exists" /> - </not> - </and> - </condition> - <![CDATA[ - You will need to edit com.amd.aparapi.jni/build.xml to compile aparapi JNI code - - At present mingw.dir is set (to ${mingw.dir}) but that dir does not exist - ]]> - </fail> - - <!--<echo message="java.home ${java.home}"/>--> - <!--<echo message="msvc.dir.exists ${msvc.dir.exists}"/>--> - <!--<echo message="msvc.sdk.dir.exists ${msvc.sdk.dir.exists}"/>--> - <!--<echo message="mingw.dir.exists ${mingw.dir.exists}"/>--> <condition property="use.msvc"> <and> @@ -404,54 +293,6 @@ First consider editing the properties in build.properties <isset property="msvc.sdk.dir.exists" /> </and> </condition> - <!--<echo message="use.msvc ${use.msvc}"/>--> - - <condition property="use.mingw"> - <and> - <os family="windows" /> - <isset property="mingw.dir.exists" /> - </and> - </condition> - <!--<echo message="use.mingw ${use.mingw}"/>--> - - <fail message="Error:"> - <condition> - <and> - <isset property="use.mingw" /> - <isset property="use.msvc" /> - </and> - </condition> - <![CDATA[ - You will need to edit com.amd.aparapi.jni/build.xml to compile aparapi JNI code - - At present Ant is Configured for both MinGW AND Microsoft Visual Studio. You need to pick one or the other :) ! - - Just comment out the properties for the compiler that you *do not* wish to use. - ]]> - </fail> - - <fail message="Error:"> - <condition> - <and> - <os family="windows" /> - <not> - <or> - <isset property="use.mingw" /> - <isset property="use.msvc" /> - </or> - </not> - </and> - </condition> - <![CDATA[ - You will need to edit com.amd.aparapi.jni/build.xml to compile aparapi JNI code - - This looks like a Windows machine so you probably need to configure either: - - * msvc.dir and msvc.sdk.dir if you wish to use Microsoft Visual Studio compiler - - * mingw.dir if you prefer if you prefer to use MinGW - ]]> - </fail> <condition property="use.gcc"> <and> @@ -502,8 +343,8 @@ First consider editing the properties in build.properties <![CDATA[ You will need to edit com.amd.aparapi.jni/build.xml to compile aparapi JNI code - Could not find vc\bin\${optional.amd64.subdir}cl under Configured msvc.dir. Check if msvc.dir is pointing - to a valid visual studio installation + Could not find vc\bin\${optional.amd64.subdir}cl under configured msvc.dir. Check if msvc.dir is pointing + to a valid Visual Studio installation ]]> </fail> @@ -524,6 +365,7 @@ First consider editing the properties in build.properties You need to set amd.app.sdk.dir to point to the location where AMD APP SDK is installed ]]> </fail> + <available file="${amd.app.sdk.dir}" type="dir" property="amd.app.sdk.dir.exists" /> <fail message="Error:"> @@ -735,46 +577,7 @@ First consider editing the properties in build.properties </exec> </target> - <target name="mingw" if="use.mingw"> - <mkdir dir="${basedir}\dist"/> - <echo message="mingw ${os.arch}" /> - <exec executable="${mingw.dir}/bin/g++" failonerror="true"> - <env key="PATH" path="${env.PATH};${mingw.dir}/bin" /> - <arg value="-Wall" /> - <arg value="-O3" /> - <arg value="-Wl,--kill-at" /> - <arg value="-DCL_USE_DEPRECATED_OPENCL_1_1_APIS"/> - <arg value="-I${java.home}\..\include" /> - <arg value="-I${java.home}\..\include\win32" /> - <arg value="-Iinclude" /> - <arg value="-I${amd.app.sdk.dir}\include" /> - <arg value="-Isrc/cpp" /> - <arg value="-Isrc/cpp/runKernel" /> - <arg value="-Isrc/cpp/invoke" /> - <arg value="-shared" /> - <arg value="-o" /> - <arg value="${basedir}\dist\aparapi_${x86_or_x86_64}.dll" /> - <arg value="src/cpp/runKernel/Aparapi.cpp" /> - <arg value="src/cpp/runKernel/ArrayBuffer.cpp" /> - <arg value="src/cpp/runKernel/AparapiBuffer.cpp" /> - <arg value="src/cpp/runKernel/Config.cpp" /> - <arg value="src/cpp/runKernel/JNIContext.cpp" /> - <arg value="src/cpp/runKernel/KernelArg.cpp" /> - <arg value="src/cpp/runKernel/ProfileInfo.cpp" /> - <arg value="src/cpp/runKernel/Range.cpp" /> - <arg value="src/cpp/invoke/OpenCLJNI.cpp" /> - <arg value="src/cpp/invoke/OpenCLArgDescriptor.cpp" /> - <arg value="src/cpp/invoke/OpenCLMem.cpp" /> - <arg value="src/cpp/CLHelper.cpp" /> - <arg value="src/cpp/classtools.cpp" /> - <arg value="src/cpp/JNIHelper.cpp" /> - <arg value="src/cpp/agent.cpp" /> - <arg value="-L${amd.app.sdk.dir}\lib\${x86_or_x86_64}" /> - <arg value="-lOpenCL" /> - </exec> - </target> - - <target name="build" depends="clean, javah, msvc, mingw, gcc, gcc_mac" /> + <target name="build" depends="clean, javah, msvc, gcc, gcc_mac" /> <target name="msvc_cltest" if="use.msvc"> <mkdir dir="${basedir}\dist"/>