summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorJukka Ojanen <jukka.ojanen@linkotec.net>2014-11-16 14:09:21 +0200
committerJukka Ojanen <jukka.ojanen@linkotec.net>2014-11-16 14:09:21 +0200
commit869efff02080d23cfea2b4c1aa79fc8d7de5bb44 (patch)
tree2ebaa9b9a7041bc95151a86d8bbb0db6508784cd /CMakeLists.txt
parent91c5679d7dd965e58885226e01baed1f843d5870 (diff)
downloadffts-869efff02080d23cfea2b4c1aa79fc8d7de5bb44.zip
ffts-869efff02080d23cfea2b4c1aa79fc8d7de5bb44.tar.gz
YASM is no longer needed to build for Windows
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt42
1 files changed, 25 insertions, 17 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d69d490..8de7302 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -31,6 +31,10 @@ option(ENABLE_SHARED
"Enable building a shared library." OFF
)
+option(ENABLE_YASM_COMPILE
+ "Enables compiling with YASM for Windows." OFF
+)
+
add_definitions(-DFFTS_CMAKE_GENERATED)
if(MSVC)
@@ -85,23 +89,27 @@ if(ENABLE_SSE)
)
if(MSVC)
- set(CMAKE_ASM-ATT_COMPILER yasm)
- enable_language(ASM-ATT)
-
- add_custom_command(
- OUTPUT sse_win64.obj
- COMMAND ${CMAKE_ASM-ATT_COMPILER} -f win64 -m amd64
- -o ${CMAKE_CURRENT_BINARY_DIR}/sse_win64.obj -p gas
- ${CMAKE_CURRENT_SOURCE_DIR}/src/sse_win64.s
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src/sse_win64.s
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
- COMMENT "Generating sse_win64.obj"
- )
-
- list(APPEND FFTS_SOURCES
- ${CMAKE_CURRENT_BINARY_DIR}/sse_win64.obj
- src/sse_win64.s
- )
+ if(ENABLE_YASM_COMPILE)
+ set(CMAKE_ASM-ATT_COMPILER yasm)
+ enable_language(ASM-ATT)
+
+ add_custom_command(
+ OUTPUT sse_win64.obj
+ COMMAND ${CMAKE_ASM-ATT_COMPILER} -f win64 -m amd64
+ -o ${CMAKE_CURRENT_BINARY_DIR}/sse_win64.obj -p gas
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/sse_win64.s
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src/sse_win64.s
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ COMMENT "Generating sse_win64.obj"
+ )
+
+ list(APPEND FFTS_SOURCES
+ ${CMAKE_CURRENT_BINARY_DIR}/sse_win64.obj
+ src/sse_win64.s
+ )
+ else()
+ add_definitions(-DSSE_DEFINE_CONSTANTS)
+ endif(ENABLE_YASM_COMPILE)
else()
list(APPEND FFTS_SOURCES
src/sse.s
OpenPOWER on IntegriCloud