diff options
| author | santoleri-nvidia <[email protected]> | 2017-02-24 19:48:22 +0100 |
|---|---|---|
| committer | santoleri-nvidia <[email protected]> | 2017-02-24 19:48:22 +0100 |
| commit | f930643a042334fe490e9bdc3fecd9afd1799cde (patch) | |
| tree | 6e4df6aec15a5446cc0ebd92d92071fe43f496d2 | |
| parent | Updating to [email protected] and blast_tools_and_samples... (diff) | |
| parent | adding linux source (diff) | |
| download | blast-f930643a042334fe490e9bdc3fecd9afd1799cde.tar.xz blast-f930643a042334fe490e9bdc3fecd9afd1799cde.zip | |
adding linux support
| -rwxr-xr-x | buildtools/cmake_projects_linux.sh | 29 | ||||
| -rwxr-xr-x | buildtools/packman/linux/packman | 47 | ||||
| -rw-r--r-- | compiler/cmake/linux/CMakeLists.txt | 18 | ||||
| -rwxr-xr-x | generate_projects_linux.sh | 11 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/CMakeLists.txt | 27 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlast.cmake | 21 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake | 23 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake | 23 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastExtImport.cmake | 23 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake | 23 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake | 21 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake | 21 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastExtShaders.cmake | 23 | ||||
| -rw-r--r-- | sdk/compiler/cmake/linux/NvBlastTk.cmake | 22 | ||||
| -rw-r--r-- | test/compiler/cmake/linux/BlastPerfTests.cmake | 24 | ||||
| -rw-r--r-- | test/compiler/cmake/linux/BlastUnitTests.cmake | 24 | ||||
| -rw-r--r-- | test/compiler/cmake/linux/CMakeLists.txt | 25 | ||||
| -rw-r--r-- | test/data/linux64/PerfTest_linux64.cal | 0 |
18 files changed, 405 insertions, 0 deletions
diff --git a/buildtools/cmake_projects_linux.sh b/buildtools/cmake_projects_linux.sh new file mode 100755 index 0000000..60f6e82 --- /dev/null +++ b/buildtools/cmake_projects_linux.sh @@ -0,0 +1,29 @@ +#!/bin/bash +x + +echo "Starting $(date)" + +[ -z "$BLAST_ROOT_DIR" ] && echo "BLAST_ROOT_DIR not defined." && exit 1; +[ -z "$PM_CMakeModules_VERSION" ] && echo "PM_CMakeModules_VERSION not defined." && exit 1; +[ -z "$PM_cmake_VERSION" ] && echo "PM_cmake_VERSION not defined." && exit 1; +[ -z "$PM_PACKAGES_ROOT" ] && echo "PM_PACKAGES_ROOT not defined." && exit 1; + +CMAKE=$PM_cmake_PATH/bin/cmake + +echo "Cmake: $CMAKE" + +set -e + +# Common cmd line params +CMAKE_CMD_LINE_PARAMS="-DTARGET_BUILD_PLATFORM=linux -DBL_LIB_OUTPUT_DIR=$BLAST_ROOT_DIR/lib/linux64-gcc -DBL_DLL_OUTPUT_DIR=$BLAST_ROOT_DIR/bin/linux64-gcc -DBL_EXE_OUTPUT_DIR=$BLAST_ROOT_DIR/bin/linux64-gcc" + +#configs=("debug" "profile" "checked" "release") +configs=("debug" "release") +for config in "${configs[@]}" +do + # Generate projects + rm -r -f $BLAST_ROOT_DIR/compiler/linux64-$config-gcc/ + mkdir $BLAST_ROOT_DIR/compiler/linux64-$config-gcc/ + cd $BLAST_ROOT_DIR/compiler/linux64-$config-gcc/ + $CMAKE $BLAST_ROOT_DIR -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=$config $CMAKE_CMD_LINE_PARAMS + cd $BLAST_ROOT_DIR +done diff --git a/buildtools/packman/linux/packman b/buildtools/packman/linux/packman new file mode 100755 index 0000000..65ad2fc --- /dev/null +++ b/buildtools/packman/linux/packman @@ -0,0 +1,47 @@ +#!/bin/sh + +PM_PACKMAN_VERSION=3.7 + +# read source config to set PM_PACKAGE_SOURCE +PM_PACKAGE_SOURCE=`cat $(dirname "$0")/../source.conf` +export PM_PACKAGE_SOURCE +echo "PM_PACKAGE_SOURCE: '$PM_PACKAGE_SOURCE'" + +# The pagackes root may already be configured by the user +if [ -z "$PM_PACKAGES_ROOT" ]; then + export PM_PACKAGES_ROOT="${HOME}/packman-repo" +fi + +# Ensure the packages root path exists: +if [ ! -d "$PM_PACKAGES_ROOT" ]; then + echo "Creating packman packages repository at $PM_PACKAGES_ROOT" + mkdir "$PM_PACKAGES_ROOT" +fi + +# The packman module may be externally configured +if [ -z "$PM_MODULE_EXT" ]; then + PM_MODULE_DIR="$PM_PACKAGES_ROOT/packman/$PM_PACKMAN_VERSION-common" + export PM_MODULE="$PM_MODULE_DIR/packman.py" +else + export PM_MODULE="$PM_MODULE_EXT" +fi + +# Ensure the packman package exists: +if [ ! -f "$PM_MODULE" ]; then + PM_MODULE_PACKAGE="packman@$PM_PACKMAN_VERSION-common" + TARGET="/tmp/$PM_MODULE_PACKAGE.zip" + if [ "$PM_PACKAGE_SOURCE" = "gtl" ]; then + PM_COMMON_GUID=24ED6205-CFE6-4A64-A4B3-4BD87B64279F + echo "Fetching $PM_MODULE_PACKAGE from NVGTL using GUID $PM_COMMON_GUID..." + wget --quiet --user=svcgtlautomate --password='@ut0M@t3GTL$cr1pt$' -O$TARGET http://nvgtl.nvidia.com/download/$PM_COMMON_GUID + else + echo "Fetching $PM_MODULE_PACKAGE.zip from S3..." + wget --quiet -O$TARGET "http://packman.s3.amazonaws.com/$PM_MODULE_PACKAGE.zip" + fi + echo "Unpacking ..." + mkdir -p "$PM_MODULE_DIR" + unzip -q $TARGET -d "$PM_MODULE_DIR" + rm $TARGET +fi + +python $PM_MODULE $* diff --git a/compiler/cmake/linux/CMakeLists.txt b/compiler/cmake/linux/CMakeLists.txt new file mode 100644 index 0000000..fcf0cde --- /dev/null +++ b/compiler/cmake/linux/CMakeLists.txt @@ -0,0 +1,18 @@ +#Platform specific compile flags and project includes + +SET(CMAKE_CXX_FLAGS "-Werror") + +SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") +SET(CMAKE_CXX_FLAGS_CHECKED "-O2 -g") +SET(CMAKE_CXX_FLAGS_PROFILE "-O2 -g") +SET(CMAKE_CXX_FLAGS_RELEASE "-O2") + +SET(BLASTALL_SLN_COMPILE_DEFS "") + +SET(BLASTALL_SLN_DEBUG_COMPILE_DEFS _DEBUG;NV_DEBUG=1;) +SET(BLASTALL_SLN_CHECKED_COMPILE_DEFS NDEBUG;NV_CHECKED=1;) +SET(BLASTALL_SLN_PROFILE_COMPILE_DEFS NDEBUG;NV_PROFILE=1;) +SET(BLASTALL_SLN_RELEASE_COMPILE_DEFS NDEBUG;) + + + diff --git a/generate_projects_linux.sh b/generate_projects_linux.sh new file mode 100755 index 0000000..362cb11 --- /dev/null +++ b/generate_projects_linux.sh @@ -0,0 +1,11 @@ +#!/bin/sh +x + +# Set the blast root to the current directory +SCRIPT=$(readlink -f "$0") +export BLAST_ROOT_DIR=$(dirname $SCRIPT) +echo $BLAST_ROOT_DIR + +# Run packman to ensure dependencies are present and run cmake generation script afterwards +echo "Running packman in preparation for cmake ..." + +$BLAST_ROOT_DIR"/buildtools/packman/linux/packman" $PM_OPTIONS_EXT pull $BLAST_ROOT_DIR"/dependencies.xml" --platform linux --postscript $BLAST_ROOT_DIR"/buildtools/cmake_projects_linux.sh" diff --git a/sdk/compiler/cmake/linux/CMakeLists.txt b/sdk/compiler/cmake/linux/CMakeLists.txt new file mode 100644 index 0000000..440351e --- /dev/null +++ b/sdk/compiler/cmake/linux/CMakeLists.txt @@ -0,0 +1,27 @@ +#Platform specific compile flags and project includes + +SET(CMAKE_CXX_FLAGS "-Wextra -Werror -pedantic -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fpic -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -std=c++0x") + +SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -gdwarf-2") +SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g3 -gdwarf-2 -fno-strict-aliasing") +SET(CMAKE_CXX_FLAGS_PROFILE "-O3 -fno-strict-aliasing") +SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -fno-strict-aliasing") + +SET(BLAST_SLN_COMPILE_DEFS ) + +SET(BLAST_SLN_DEBUG_COMPILE_DEFS _DEBUG;NV_DEBUG=1;) +SET(BLAST_SLN_CHECKED_COMPILE_DEFS NDEBUG;NV_CHECKED=1;) +SET(BLAST_SLN_PROFILE_COMPILE_DEFS NDEBUG;NV_PROFILE=1;) +SET(BLAST_SLN_RELEASE_COMPILE_DEFS NDEBUG;) + +# Include all of the projects +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlast.cmake) +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastTk.cmake) +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtConverterLL.cmake) +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtShaders.cmake) +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPhysX.cmake) +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAuthoring.cmake) +#INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake) +#INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake) +#INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerializationLL.cmake) + diff --git a/sdk/compiler/cmake/linux/NvBlast.cmake b/sdk/compiler/cmake/linux/NvBlast.cmake new file mode 100644 index 0000000..63ebeea --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlast.cmake @@ -0,0 +1,21 @@ +# +# Build NvBlast Linux +# + +SET(BLAST_PLATFORM_COMMON_FILES +) + +SET(BLAST_PLATFORM_INCLUDES +) + +SET(BLAST_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLAST_LIB_TYPE STATIC) diff --git a/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake new file mode 100644 index 0000000..c99653b --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake @@ -0,0 +1,23 @@ +# +# Build NvBlast Linux +# + +SET(BLASTEXT_PLATFORM_COMMON_FILES +) + +SET(BLASTEXT_PLATFORM_INCLUDES +) + +SET(BLASTEXT_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLAST_EXT_SHARED_LIB_TYPE STATIC) + +SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-maybe-uninitialized") diff --git a/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake b/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake new file mode 100644 index 0000000..d37a1dc --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake @@ -0,0 +1,23 @@ +# +# Build NvBlast Linux +# + +SET(BLASTEXT_PLATFORM_COMMON_FILES +) + +SET(BLASTEXT_PLATFORM_INCLUDES +) + +SET(BLASTEXT_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLAST_EXT_SHARED_LIB_TYPE STATIC) + +SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas") diff --git a/sdk/compiler/cmake/linux/NvBlastExtImport.cmake b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake new file mode 100644 index 0000000..d37a1dc --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake @@ -0,0 +1,23 @@ +# +# Build NvBlast Linux +# + +SET(BLASTEXT_PLATFORM_COMMON_FILES +) + +SET(BLASTEXT_PLATFORM_INCLUDES +) + +SET(BLASTEXT_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLAST_EXT_SHARED_LIB_TYPE STATIC) + +SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas") diff --git a/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake b/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake new file mode 100644 index 0000000..22fd8ad --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake @@ -0,0 +1,23 @@ +# +# Build NvBlast Linux +# + +SET(BLASTEXT_PLATFORM_COMMON_FILES +) + +SET(BLASTEXT_PLATFORM_INCLUDES +) + +SET(BLASTEXT_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLASTEXT_PHYSX_LIBTYPE STATIC) + +SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-maybe-uninitialized") diff --git a/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake new file mode 100644 index 0000000..a8bc1cf --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake @@ -0,0 +1,21 @@ +# +# Build NvBlastExtSerialization Linux +# + +SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES +) + +SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES +) + +SET(BLASTEXTSERIALIZATION_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "") diff --git a/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake b/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake new file mode 100644 index 0000000..a8bc1cf --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake @@ -0,0 +1,21 @@ +# +# Build NvBlastExtSerialization Linux +# + +SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES +) + +SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES +) + +SET(BLASTEXTSERIALIZATION_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "") diff --git a/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake new file mode 100644 index 0000000..d37a1dc --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake @@ -0,0 +1,23 @@ +# +# Build NvBlast Linux +# + +SET(BLASTEXT_PLATFORM_COMMON_FILES +) + +SET(BLASTEXT_PLATFORM_INCLUDES +) + +SET(BLASTEXT_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS}; + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLAST_EXT_SHARED_LIB_TYPE STATIC) + +SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas") diff --git a/sdk/compiler/cmake/linux/NvBlastTk.cmake b/sdk/compiler/cmake/linux/NvBlastTk.cmake new file mode 100644 index 0000000..4f70825 --- /dev/null +++ b/sdk/compiler/cmake/linux/NvBlastTk.cmake @@ -0,0 +1,22 @@ +# +# Build NvBlastTk Linux +# + +SET(BLASTTK_PLATFORM_COMMON_FILES +) + +SET(BLASTTK_PLATFORM_INCLUDES +) + +SET(BLASTTK_COMPILE_DEFS + # Common to all configurations + ${BLAST_SLN_COMPILE_DEFS} + + $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLASTTK_LIBTYPE "STATIC") + diff --git a/test/compiler/cmake/linux/BlastPerfTests.cmake b/test/compiler/cmake/linux/BlastPerfTests.cmake new file mode 100644 index 0000000..1ef9eb8 --- /dev/null +++ b/test/compiler/cmake/linux/BlastPerfTests.cmake @@ -0,0 +1,24 @@ +# +# Build BlastPerfTests PS4 +# + +SET(BLASTPERFTESTS_PLATFORM_COMMON_FILES +) + +SET(BLASTPERFTESTS_PLATFORM_INCLUDES +) + +SET(BLASTPERFTESTS_COMPILE_DEFS + # Common to all configurations + ${BLASTTESTS_SLN_COMPILE_DEFS} + + $<$<CONFIG:debug>:${BLASTTESTS_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLASTTESTS_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLASTTESTS_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLASTTESTS_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLASTPERFTESTS_PLATFORM_LINKED_LIBS + -lpthread + -lm +) diff --git a/test/compiler/cmake/linux/BlastUnitTests.cmake b/test/compiler/cmake/linux/BlastUnitTests.cmake new file mode 100644 index 0000000..e8a333a --- /dev/null +++ b/test/compiler/cmake/linux/BlastUnitTests.cmake @@ -0,0 +1,24 @@ +# +# Build BlastUnitTests PS4 +# + +SET(BLASTUNITTESTS_PLATFORM_COMMON_FILES +) + +SET(BLASTUNITTESTS_PLATFORM_INCLUDES +) + +SET(BLASTUNITTESTS_COMPILE_DEFS + # Common to all configurations + ${BLASTTESTS_SLN_COMPILE_DEFS} + + $<$<CONFIG:debug>:${BLASTTESTS_SLN_DEBUG_COMPILE_DEFS}> + $<$<CONFIG:checked>:${BLASTTESTS_SLN_CHECKED_COMPILE_DEFS}> + $<$<CONFIG:profile>:${BLASTTESTS_SLN_PROFILE_COMPILE_DEFS}> + $<$<CONFIG:release>:${BLASTTESTS_SLN_RELEASE_COMPILE_DEFS}> +) + +SET(BLASTUNITTESTS_PLATFORM_LINKED_LIBS + -lpthread + -lm +) diff --git a/test/compiler/cmake/linux/CMakeLists.txt b/test/compiler/cmake/linux/CMakeLists.txt new file mode 100644 index 0000000..be49d07 --- /dev/null +++ b/test/compiler/cmake/linux/CMakeLists.txt @@ -0,0 +1,25 @@ +#Platform specific compile flags and project includes + +SET(CMAKE_CXX_FLAGS "-Wextra -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fpic -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -Wno-multichar -std=c++0x") + +SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -gdwarf-2") +SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g3 -gdwarf-2 -fno-strict-aliasing") +SET(CMAKE_CXX_FLAGS_PROFILE "-O3 -fno-strict-aliasing") +SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -fno-strict-aliasing") + +SET(BLASTTESTS_SLN_COMPILE_DEFS) +#NvBlastExt doesn't have the _CONSOLE flag + +SET(BLASTTESTS_SLN_DEBUG_COMPILE_DEFS _DEBUG;NV_DEBUG=1;) +SET(BLASTTESTS_SLN_CHECKED_COMPILE_DEFS NDEBUG;NV_CHECKED=1;) +SET(BLASTTESTS_SLN_PROFILE_COMPILE_DEFS NDEBUG;NV_PROFILE=1;) +SET(BLASTTESTS_SLN_RELEASE_COMPILE_DEFS NDEBUG;) + +SET(CMAKE_EXECUTABLE_SUFFIX ".elf") + + +# Include all of the projects +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/BlastUnitTests.cmake) +INCLUDE(${PROJECT_CMAKE_FILES_DIR}/BlastPerfTests.cmake) + + diff --git a/test/data/linux64/PerfTest_linux64.cal b/test/data/linux64/PerfTest_linux64.cal new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/data/linux64/PerfTest_linux64.cal |