Przeglądaj źródła

Removed a huge unnecessary MinGW hack.

See Toolchain-mingw32.cmake for a better solution.
cib 12 lat temu
rodzic
commit
80c57d04d3
2 zmienionych plików z 21 dodań i 44 usunięć
  1. 0 44
      CMakeLists.txt
  2. 21 0
      Toolchain-mingw32.cmake

+ 0 - 44
CMakeLists.txt

@@ -46,50 +46,6 @@ SET(CMAKE_PREFIX_PATH
     ${POLYCODE_RELEASE_DIR}/Framework/Modules/Dependencies
     ${POLYCODE_RELEASE_DIR}/Framework/Tools/Dependencies)
 
-MESSAGE(DEBUG " CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}")
-
-# If the following large ugly mess is not present, failures can occur with -G "Unix Makefiles".
-# Even WITH this, you may get "library not found" errors on mingw first run; if so just re-run.
-# FIXME: Shouldn't be necessary if FIND_LIBRARY were working on mingw.
-IF (MINGW)
-LINK_DIRECTORIES(${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/lib)
-LINK_DIRECTORIES(${POLYCODE_RELEASE_DIR}/Framework/Modules/Dependencies/lib)
-SET(ZLIB_LIBRARY zlib)
-SET(ZLIB_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(OGG_LIBRARY libogg)
-SET(OGG_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(PNG_LIBRARY png)
-SET(PNG_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(PHYSFS_LIBRARY physfs)
-SET(PHYSFS_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(OPENAL_LIBRARY OpenAL32)
-SET(OPENAL_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include/AL)
-SET(FREETYPE_LIBRARY freetype)
-SET(FREETYPE_INCLUDE_DIRS ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(VORBIS_LIBRARY libvorbis)
-SET(VORBIS_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(VORBISFILE_LIBRARY libvorbisfile)
-SET(VORBISFILE_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(LUA_LIBRARY lua5.1)
-SET(LUA_LIBRARIES lua5.1)
-SET(LUA_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include/lua5.1)
-SET(BOX2D_RELEASE_LIBRARY Box2D)
-SET(BOX2D_DEBUG_LIBRARY Box2D)
-SET(BOX2D_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Modules/Dependencies/include)
-SET(ASSIMP_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include)
-SET(BULLET_INCLUDE_DIR ${POLYCODE_RELEASE_DIR}/Framework/Modules/Dependencies/include/bullet)
-SET(LIBBULLETCOLLISION BulletCollision)
-SET(LIBBULLETDYNAMICS BulletDynamics)
-SET(LIBBULLETMATH LinearMath)
-SET(LIBBULLETMULTITHREADED BulletMultiThreaded)
-SET(LIBBULLETSOFTBODY BulletSoftBody)
-SET(LIBBULLETCOLLISION_DEBUG BulletCollision)
-SET(LIBBULLETDYNAMICS_DEBUG BulletDynamics)
-SET(LIBBULLETMATH_DEBUG LinearMath)
-SET(LIBBULLETMULTITHREADED_DEBUG BulletMultiThreaded)
-SET(LIBBULLETSOFTBODY_DEBUG BulletSoftBody)
-ENDIF()
-
 # Process subdirectories
 ADD_SUBDIRECTORY(Core/Contents)
 ADD_SUBDIRECTORY("Assets/Default asset pack")

+ 21 - 0
Toolchain-mingw32.cmake

@@ -0,0 +1,21 @@
+# the name of the target operating system
+SET(CMAKE_SYSTEM_NAME Windows)
+
+# which compilers to use for C and C++
+SET(CMAKE_C_COMPILER i486-mingw32-gcc)
+SET(CMAKE_CXX_COMPILER i486-mingw32-g++)
+SET(CMAKE_RC_COMPILER i486-mingw32-windres)
+
+# here is the target environment located
+SET(POLYCODE_DIRECTORY "/home/cib/projects/Polycode")
+SET(CMAKE_FIND_ROOT_PATH  /usr/i486-mingw32; ${POLYCODE_DIRECTORY}/Release/Windows/Framework/Core/Dependencies; ${POLYCODE_DIRECTORY}/Release/Windows/Framework/Tools/Dependencies; /home/cib/projects/Polycode/Release/Windows/Framework/Modules/Dependencies; )
+
+# adjust the default behaviour of the FIND_XXX() commands:
+# search headers and libraries in the target environment, search 
+# programs in the host environment
+set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
+set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
+set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
+
+# Paste the below into the relevant cmake files.
+#set(CMAKE_CXX_FLAGS "-D_WINDOWS -D_MINGW -D_WIN32 -DWIN32 -D__MINGW__")