[CMAKE]
[reactos.git] / dll / 3rdparty / mesa32 / CMakeLists.txt
index 53cf0da..dda1602 100644 (file)
@@ -1,17 +1,10 @@
 
 add_definitions(
-    -DUSE_EXTERNAL_DXTN_LIB
+    -DUSE_EXTERNAL_DXTN_LIB=1
     -DBUILD_GL32
     -DWIN32
-    -D_WINDOWS
-    -D_MBCS
-    -DHAVE_STAT
-    -DHAVE_WIN32_THREADS
-    -D_REENTRANT
-    -D_WINSOCKAPI_
-    -DLIBXML_STATIC)
-
-add_definitions(-D_DLL -D__USE_CRTIMP)
+    -DUSE_3DNOW_ASM
+    -D_DLL -D__USE_CRTIMP)
 
 if(ARCH MATCHES i386)
 add_definitions(
@@ -22,17 +15,22 @@ else()
 add_definitions(-DGL_NO_STDCALL)
 endif(ARCH MATCHES i386)
 
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/main)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/glapi)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/math)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/tnl)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/shader)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/shader/grammar)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/shader/slang)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/shader/slang/OSDependent/Linux)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/shader/slang/OGLCompilersDLL)
+if(NOT MSVC)
+    set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS_INIT} -Wl,--enable-stdcall-fixup")
+endif()
+
+include_directories(
+    BEFORE include
+    src
+    src/main
+    src/glapi
+    src/math
+    src/tnl
+    src/shader
+    src/shader/grammar
+    src/shader/slang
+    src/shader/slang/OSDependent/Linux
+    src/shader/slang/OGLCompilersDLL)
 
 list(APPEND SOURCE
     src/drivers/common/driverfuncs.c
@@ -224,7 +222,10 @@ list(APPEND SOURCE
     src/vbo/vbo_save_loopback.c
     src/vbo/vbo_split.c
     src/vbo/vbo_split_copy.c
-    src/vbo/vbo_split_inplace.c)
+    src/vbo/vbo_split_inplace.c
+    src/drivers/windows/icd/mesa.def)
+
+set_source_files_properties(src/drivers/windows/icd/mesa.def PROPERTIES EXTERNAL_OBJECT TRUE)
 
 if(ARCH MATCHES i386)
 list(APPEND SOURCE
@@ -260,13 +261,8 @@ add_library(mesa32 SHARED ${SOURCE})
 
 set_entrypoint(mesa32 0)
 
-if (NOT MSVC)
-set_target_properties(mesa32 PROPERTIES LINK_FLAGS "-Wl,-w")
-endif(NOT MSVC)
-
-
-target_link_libraries(mesa32 ${CMAKE_CURRENT_BINARY_DIR}/src/drivers/windows/icd/mesa.def)
-
-add_importlibs(mesa32 gdi32 user32 ntdll)
+add_importlibs(mesa32 gdi32 user32 msvcrt kernel32 ntdll)
 
 add_dependencies(mesa32 psdk buildno_header)
+
+add_cab_target(mesa32 1)