From 8a953439f1fe8d331dd2fc51c244b0003f68dae0 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sun, 15 Sep 2013 00:23:46 +0200 Subject: Workaround GNU ld bugs with win32-specific stuff --- CMakeLists.txt | 10 ++++------ freetrackclient/freetrackclient.def | 6 ++++++ 2 files changed, 10 insertions(+), 6 deletions(-) create mode 100644 freetrackclient/freetrackclient.def diff --git a/CMakeLists.txt b/CMakeLists.txt index d5d4684a..b022e79b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -371,13 +371,11 @@ endif() add_library(opentrack-proto-win32-mouse SHARED ${opentrack-proto-win32-mouse-c} ${opentrack-proto-win32-mouse-moc} ${opentrack-proto-win32-mouse-uih} ${opentrack-proto-win32-mouse-rcc}) target_link_libraries(opentrack-proto-win32-mouse ${MY_QT_LIBS}) - add_library(freetrackclient SHARED ${opentrack-freetrack-c}) if(CMAKE_COMPILER_IS_GNUCC) - set_target_properties(freetrackclient PROPERTIES - LINK_FLAGS "-Wl,--kill-at" - LIBRARY_OUTPUT_NAME "freetrackclient.dll" - PREFIX "" SUFFIX "" - ) + add_library(freetrackclient SHARED ${opentrack-freetrack-c} "${CMAKE_SOURCE_DIR}/freetrackclient/freetrackclient.def") + set_target_properties(freetrackclient PROPERTIES LINK_FLAGS "-Wl,--enable-stdcall-fixup") + else() + add_library(freetrackclient SHARED ${opentrack-freetrack-c}) endif() endif() diff --git a/freetrackclient/freetrackclient.def b/freetrackclient/freetrackclient.def new file mode 100644 index 00000000..155648dd --- /dev/null +++ b/freetrackclient/freetrackclient.def @@ -0,0 +1,6 @@ +LIBRARY freetrackclient.dll +EXPORTS +FTGetData@4 = FTGetData +FTReportName@4 = FTReportName +FTGetDllVersion@0 = FTGetDllVersion +FTProvider@0 = FTProvider -- cgit v1.2.3