Author: akhaldi Date: Tue Oct 11 18:31:35 2011 New Revision: 54082
URL: http://svn.reactos.org/svn/reactos?rev=54082&view=rev Log: [CMAKE] * Use the gcc toolchain-provided STL. * Use STLport only on MSVC builds. [KSPROXY] * Set imagebase, properly set its entry point, use set_cpp() instead of hardcoded definition/includes and add no exceptions/rtti gcc flags. [GLU32] * Use set_cpp() instead of the hardcoded target_link_libraries(). [PORTCLS] * Use set_module_type() with proper entry point, instead of expanded macro calls, and get rid of hardcoded target_link_libraries().
* Commit Dedicated to Olaf Siejka (Caemyr).
Modified: trunk/reactos/base/applications/sndrec32/CMakeLists.txt trunk/reactos/cmake/CMakeMacros.cmake trunk/reactos/cmake/gcc.cmake trunk/reactos/dll/directx/ksproxy/CMakeLists.txt trunk/reactos/dll/win32/glu32/CMakeLists.txt trunk/reactos/drivers/wdm/audio/backpln/portcls/CMakeLists.txt trunk/reactos/lib/3rdparty/CMakeLists.txt
Modified: trunk/reactos/base/applications/sndrec32/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/sndrec32/... ============================================================================== --- trunk/reactos/base/applications/sndrec32/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/base/applications/sndrec32/CMakeLists.txt [iso-8859-1] Tue Oct 11 18:31:35 2011 @@ -13,7 +13,6 @@ sndrec32.cpp rsrc.rc)
-target_link_libraries(sndrec32 stlport) set_module_type(sndrec32 win32gui UNICODE) add_importlibs(sndrec32 winmm user32 msacm32 comctl32 comdlg32 gdi32 msvcrt kernel32) add_cd_file(TARGET sndrec32 DESTINATION reactos/system32 FOR all)
Modified: trunk/reactos/cmake/CMakeMacros.cmake URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/CMakeMacros.cmake?rev... ============================================================================== --- trunk/reactos/cmake/CMakeMacros.cmake [iso-8859-1] (original) +++ trunk/reactos/cmake/CMakeMacros.cmake [iso-8859-1] Tue Oct 11 18:31:35 2011 @@ -1,10 +1,12 @@
macro(set_cpp) - include_directories(BEFORE ${REACTOS_SOURCE_DIR}/include/c++/stlport) set(IS_CPP 1) - add_definitions( - -DNATIVE_CPP_INCLUDE=${REACTOS_SOURCE_DIR}/include/c++ - -DNATIVE_C_INCLUDE=${REACTOS_SOURCE_DIR}/include/crt) + if(MSVC) + include_directories(BEFORE ${REACTOS_SOURCE_DIR}/include/c++/stlport) + add_definitions( + -DNATIVE_CPP_INCLUDE=${REACTOS_SOURCE_DIR}/include/c++ + -DNATIVE_C_INCLUDE=${REACTOS_SOURCE_DIR}/include/crt) + endif() endmacro()
function(add_dependency_node _node)
Modified: trunk/reactos/cmake/gcc.cmake URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/gcc.cmake?rev=54082&a... ============================================================================== --- trunk/reactos/cmake/gcc.cmake [iso-8859-1] (original) +++ trunk/reactos/cmake/gcc.cmake [iso-8859-1] Tue Oct 11 18:31:35 2011 @@ -150,7 +150,7 @@
function(set_module_type_toolchain MODULE TYPE) if(IS_CPP) - target_link_libraries(${MODULE} stlport -lsupc++ -lgcc) + target_link_libraries(${MODULE} -lstdc++ -lsupc++ -lgcc -lmingwex) endif()
if(${TYPE} STREQUAL kernelmodedriver)
Modified: trunk/reactos/dll/directx/ksproxy/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ksproxy/CMakeLi... ============================================================================== --- trunk/reactos/dll/directx/ksproxy/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/directx/ksproxy/CMakeLists.txt [iso-8859-1] Tue Oct 11 18:31:35 2011 @@ -1,11 +1,7 @@ + +set_cpp()
spec2def(ksproxy.ax ksproxy.spec) - -add_definitions( - -DNATIVE_CPP_INCLUDE=${REACTOS_SOURCE_DIR}/include/c++ - -DNATIVE_C_INCLUDE=${REACTOS_SOURCE_DIR}/include/crt) - -include_directories(BEFORE ${REACTOS_SOURCE_DIR}/include/c++/stlport)
add_library(ksproxy SHARED allocator.cpp @@ -28,17 +24,16 @@ qualityforward.cpp ${CMAKE_CURRENT_BINARY_DIR}/ksproxy.def)
-set_entrypoint(ksproxy 0) +set_module_type(ksproxy win32dll ENTRYPOINT 0) set_target_properties(ksproxy PROPERTIES SUFFIX ".ax") + if(MSVC) add_target_compile_flags(ksproxy "/GR-") else() - #FIXME : can't build if this is enabled, check if this is needed - #add_target_compile_flags(ksproxy "-fno-exceptions -fno-rtti") - target_link_libraries(ksproxy -lsupc++ -lgcc -lmingw32 oldnames) + add_target_compile_flags(ksproxy "-fno-exceptions -fno-rtti") endif()
-target_link_libraries(ksproxy stlport strmiids) +target_link_libraries(ksproxy strmiids)
add_importlibs(ksproxy advapi32 @@ -49,6 +44,4 @@ kernel32 ntdll)
-add_dependencies(ksproxy psdk) - add_cd_file(TARGET ksproxy DESTINATION reactos/system32 FOR all)
Modified: trunk/reactos/dll/win32/glu32/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/glu32/CMakeLists.... ============================================================================== --- trunk/reactos/dll/win32/glu32/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/win32/glu32/CMakeLists.txt [iso-8859-1] Tue Oct 11 18:31:35 2011 @@ -1,3 +1,5 @@ + +set_cpp()
add_definitions( -DRESOLVE_3D_TEXTURE_SUPPORT @@ -110,10 +112,6 @@ allow_warnings(glu32) set_module_type(glu32 win32dll ENTRYPOINT 0 )
-if(NOT MSVC) - target_link_libraries(glu32 stlport -lsupc++ -lgcc -lmingw32 oldnames) -endif() - add_importlibs(glu32 opengl32 gdi32
Modified: trunk/reactos/drivers/wdm/audio/backpln/portcls/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/backpln/p... ============================================================================== --- trunk/reactos/drivers/wdm/audio/backpln/portcls/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/drivers/wdm/audio/backpln/portcls/CMakeLists.txt [iso-8859-1] Tue Oct 11 18:31:35 2011 @@ -53,20 +53,15 @@
target_link_libraries(portcls libcntpr - stlport ${PSEH_LIB})
if(MSVC) add_target_compile_flags(portcls "/GR-") else() - target_link_libraries(portcls -lgcc) add_target_compile_flags(portcls "-fno-exceptions -fno-rtti") -endif(MSVC) +endif()
+set_module_type(portcls kernelmodedriver ENTRYPOINT 0 ) add_pch(portcls private.hpp) -set_entrypoint(portcls 0) -set_image_base(portcls 0x00010000) -set_subsystem(portcls native) -set_target_properties(portcls PROPERTIES SUFFIX ".sys") add_importlibs(portcls ntoskrnl ks drmk hal) -add_cd_file(TARGET portcls DESTINATION reactos/system32/drivers FOR all) +add_cd_file(TARGET portcls DESTINATION reactos/system32/drivers FOR all)
Modified: trunk/reactos/lib/3rdparty/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/CMakeLists.txt... ============================================================================== --- trunk/reactos/lib/3rdparty/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/lib/3rdparty/CMakeLists.txt [iso-8859-1] Tue Oct 11 18:31:35 2011 @@ -9,5 +9,7 @@ add_subdirectory(libsamplerate) add_subdirectory(libwine) add_subdirectory(libxml2) -add_subdirectory(stlport) +if(MSVC) + add_subdirectory(stlport) +endif() add_subdirectory(zlib)