From 3db2c314b554ce476f5413e05edef76e5bb529e2 Mon Sep 17 00:00:00 2001 From: eater <=@eater.me> Date: Wed, 27 Mar 2019 21:09:10 +0100 Subject: [PATCH] target 0.44 for now --- mxe.src/bullet.mk | 8 +- mxe.src/openmw-2-aggresive-static.patch | 163 ------------------------ mxe.src/openmw-2-custom-flags.patch | 46 +++++++ mxe.src/openmw.mk | 56 ++++---- 4 files changed, 77 insertions(+), 196 deletions(-) delete mode 100644 mxe.src/openmw-2-aggresive-static.patch create mode 100644 mxe.src/openmw-2-custom-flags.patch diff --git a/mxe.src/bullet.mk b/mxe.src/bullet.mk index 00c6be0..0d95a12 100644 --- a/mxe.src/bullet.mk +++ b/mxe.src/bullet.mk @@ -5,10 +5,10 @@ $(PKG)_WEBSITE := https://bulletphysics.org/ $(PKG)_DESCR := Bullet physics, version 2 $(PKG)_VERSION := 2.86 $(PKG)_IGNORE := -$(PKG)_SUBDIR := $(PKG)3-$($(PKG)_VERSION) +$(PKG)_SUBDIR := $(PKG)3-$($(PKG)_VERSION) $(PKG)_CHECKSUM := e6e8b755280ce2c1a8218529eae5dd78e184f7036854229cea611374ad5a671f $(PKG)_GH_CONF := bulletphysics/bullet3/releases -$(PKG)_URL_2 := https://github.com/bulletphysics/bullet3/archive/$($(PKG)_VERSION).tar.gz +$(PKG)_URL_2 := https://github.com/bulletphysics/bullet3/archive/$($(PKG)_VERSION).tar.gz $(PKG)_DEPS := cc $(PKG)_PATCHES := @@ -17,7 +17,7 @@ define $(PKG)_BUILD -DINSTALL_LIBS=ON \ -DBUILD_CPU_DEMOS=OFF \ -DBUILD_DEMOS=OFF \ - -DBUILD_BULLET2_DEMOS=OFF \ + -DBUILD_BULLET2_DEMOS=OFF \ -DBUILD_EXTRAS=OFF \ -DBUILD_MULTITHREADING=OFF \ -DBUILD_UNIT_TESTS=OFF \ @@ -28,7 +28,7 @@ define $(PKG)_BUILD $(MAKE) -C '$(1)' -j '$(JOBS)' install VERBOSE=1 '$(TARGET)-g++' \ - -Wall -Wextra -std=gnu++0x \ + -Wall -Wextra -std=gnu++0x \ '$(TEST_FILE)' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \ `'$(TARGET)-pkg-config' $(PKG) --cflags --libs` endef diff --git a/mxe.src/openmw-2-aggresive-static.patch b/mxe.src/openmw-2-aggresive-static.patch deleted file mode 100644 index 17f8fc2..0000000 --- a/mxe.src/openmw-2-aggresive-static.patch +++ /dev/null @@ -1,163 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3c2047dd5..d209037c0 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -219,7 +219,7 @@ if(OSG_STATIC) - add_definitions(-DOSG_LIBRARY_STATIC) - - find_package(OSGPlugins REQUIRED COMPONENTS ${USED_OSG_PLUGINS}) -- list(APPEND OPENSCENEGRAPH_LIBRARIES ${OSGPlugins_LIBRARIES}) -+ list(APPEND OPENSCENEGRAPH_LIBRARIES "-Wl,-Bstatic" ${OSGPlugins_LIBRARIES}) - endif() - - if(QT_STATIC) -@@ -470,7 +470,7 @@ if(WIN32) - - INSTALL(DIRECTORY "${OpenMW_BINARY_DIR}/Debug/resources" DESTINATION "." CONFIGURATIONS Debug) - INSTALL(DIRECTORY "${OpenMW_BINARY_DIR}/Release/resources" DESTINATION "." CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel) -- -+ - FILE(GLOB plugin_dir_debug "${OpenMW_BINARY_DIR}/Debug/osgPlugins-*") - FILE(GLOB plugin_dir_release "${OpenMW_BINARY_DIR}/Release/osgPlugins-*") - INSTALL(DIRECTORY ${plugin_dir_debug} DESTINATION "." CONFIGURATIONS Debug) -@@ -837,4 +837,3 @@ if (DOXYGEN_FOUND) - WORKING_DIRECTORY ${OpenMW_BINARY_DIR} - COMMENT "Generating documentation for the github-pages at ${DOXYGEN_PAGES_OUTPUT_DIR}" VERBATIM) - endif () -- -diff --git a/apps/openmw/CMakeLists.txt b/apps/openmw/CMakeLists.txt -index 0092712db..fc29e0c0b 100644 ---- a/apps/openmw/CMakeLists.txt -+++ b/apps/openmw/CMakeLists.txt -@@ -97,6 +97,8 @@ add_openmw_dir (mwbase - - # Main executable - -+link_libraries("-static") -+ - if (NOT ANDROID) - openmw_add_executable(openmw - ${OPENMW_FILES} -@@ -111,6 +113,13 @@ else () - ) - endif () - -+add_custom_command( -+ TARGET openmw -+ PRE_LINK -+ COMMAND sed 's:-Wl,-Bdynamic::g' -i /home/eater/projects/openmw-mingw/mxe/tmp-openmw-x86_64-w64-mingw32.static/openmw-openmw-0.45.0.build_/apps/openmw/CMakeFiles/openmw.dir/linklibs.rsp -+) -+ -+ - # Sound stuff - here so CMake doesn't stupidly recompile EVERYTHING - # when we change the backend. - include_directories( -@@ -118,6 +127,8 @@ include_directories( - ) - - target_link_libraries(openmw -+ "-Wl,-Bstatic" -+ ${OPENMW_CUSTOM_FLAGS} - ${OSG_LIBRARIES} - ${OPENTHREADS_LIBRARIES} - ${OSGPARTICLE_LIBRARIES} -@@ -138,7 +149,7 @@ target_link_libraries(openmw - components - ) - --if (ANDROID) -+# if (ANDROID) - set (OSG_PLUGINS - -Wl,--whole-archive - ) -@@ -151,24 +162,24 @@ if (ANDROID) - ) - - target_link_libraries(openmw -- EGL -- android -+# EGL -+# android - log - dl - z - ${OPENSCENEGRAPH_LIBRARIES} - freetype - jpeg -- png -+ png - ) --endif (ANDROID) -+# endif (ANDROID) - - if (USE_SYSTEM_TINYXML) - target_link_libraries(openmw ${TinyXML_LIBRARIES}) - endif() - - if (NOT UNIX) --target_link_libraries(openmw ${SDL2MAIN_LIBRARY}) -+target_link_libraries(openmw "-Wl,-Bstatic" ${SDL2MAIN_LIBRARY}) - endif() - - # Fix for not visible pthreads functions for linker with glibc 2.15 -diff --git a/cmake/FindMyGUI.cmake b/cmake/FindMyGUI.cmake -index 473f543ba..2dc820922 100644 ---- a/cmake/FindMyGUI.cmake -+++ b/cmake/FindMyGUI.cmake -@@ -37,7 +37,7 @@ libfind_pkg_detect(MyGUI MyGUI${MYGUI_STATIC_SUFFIX} MYGUI${MYGUI_STATIC_SUFFIX} - HINTS $ENV{MYGUI_HOME}/lib - PATH_SUFFIXES "" release relwithdebinfo minsizerel - ) --if (MYGUI_STATIC AND (APPLE OR ANDROID)) -+if (MYGUI_STATIC) - # we need explicit Freetype libs only on OS X and ANDROID for static build - libfind_package(MyGUI Freetype) - endif() -@@ -48,6 +48,8 @@ libfind_version_n_header(MyGUI - ) - libfind_process(MyGUI) - -+set(MyGUI_LIBRARIES "-Wl,-Bstatic" ${MyGUI_LIBRARIES}) -+ - if (MyGUI_Debug_FOUND) - set(MyGUI_LIBRARIES optimized ${MyGUI_LIBRARIES} debug ${MyGUI_Debug_LIBRARIES}) - endif() -diff --git a/cmake/FindOSGPlugins.cmake b/cmake/FindOSGPlugins.cmake -index 2654bf5d5..e0c3af930 100644 ---- a/cmake/FindOSGPlugins.cmake -+++ b/cmake/FindOSGPlugins.cmake -@@ -45,4 +45,5 @@ foreach(_dependency PNG ZLIB JPEG) # needed by osgdb_png or osgdb_jpeg - #list(APPEND OSGPlugins_PROCESS_LIBS ${_dependency}_LIBRARY) - endforeach() - -+libfind_package(OSGPlugin openexr) - libfind_process(OSGPlugins) -diff --git a/components/CMakeLists.txt b/components/CMakeLists.txt -index 5c245afd0..d282fa6ba 100644 ---- a/components/CMakeLists.txt -+++ b/components/CMakeLists.txt -@@ -197,6 +197,7 @@ include_directories(${Bullet_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR}) - add_library(components STATIC ${COMPONENT_FILES} ${MOC_SRCS} ${ESM_UI_HDR}) - - target_link_libraries(components -+ "-Wl,-Bstatic" - ${Boost_SYSTEM_LIBRARY} - ${Boost_FILESYSTEM_LIBRARY} - ${Boost_THREAD_LIBRARY} -@@ -218,6 +219,7 @@ target_link_libraries(components - - if (WIN32) - target_link_libraries(components -+ "-Wl,-Bstatic" - ${Boost_LOCALE_LIBRARY}) - endif() - -@@ -236,7 +238,7 @@ if (GIT_CHECKOUT) - endif (GIT_CHECKOUT) - - if (WIN32) -- target_link_libraries(components shlwapi) -+ target_link_libraries(components "-Wl,-Bstatic" shlwapi) - if(MINGW) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOGDI") - endif(MINGW) diff --git a/mxe.src/openmw-2-custom-flags.patch b/mxe.src/openmw-2-custom-flags.patch new file mode 100644 index 0000000..75c7f92 --- /dev/null +++ b/mxe.src/openmw-2-custom-flags.patch @@ -0,0 +1,46 @@ +diff --git a/apps/openmw/CMakeLists.txt b/apps/openmw/CMakeLists.txt +index e64998077..af5335057 100644 +--- a/apps/openmw/CMakeLists.txt ++++ b/apps/openmw/CMakeLists.txt +@@ -120,6 +120,7 @@ include_directories( + ) + + target_link_libraries(openmw ++ ${OPENMW_CXX_FLAGS} + ${OSG_LIBRARIES} + ${OPENTHREADS_LIBRARIES} + ${OSGPARTICLE_LIBRARIES} +@@ -140,7 +141,7 @@ target_link_libraries(openmw + components + ) + +-if (ANDROID) ++if (ANDROID OR OPENMW_STATIC) + set (OSG_PLUGINS + -Wl,--whole-archive + ) +@@ -153,15 +154,20 @@ if (ANDROID) + ) + + target_link_libraries(openmw +- EGL +- android +- log + dl + z + ${OPENSCENEGRAPH_LIBRARIES} + freetype + jpeg +- png ++ png ++ ) ++endif (ANDROID OR OPENMW_STATIC) ++ ++if (ANDROID) ++ target_link_libraries(openmw ++ EGL ++ android ++ log + ) + endif (ANDROID) + diff --git a/mxe.src/openmw.mk b/mxe.src/openmw.mk index 382f06d..460698f 100644 --- a/mxe.src/openmw.mk +++ b/mxe.src/openmw.mk @@ -1,39 +1,37 @@ PKG := openmw $(PKG)_DESCR := Fast, flexible and simple GUI. $(PKG)_IGNORE := -$(PKG)_VERSION := 0.45.0 -$(PKG)_SUBDIR := openmw-openmw-$($(PKG)_VERSION) -$(PKG)_CHECKSUM := b63cf971f406ef5f28019f65e9e2bd9641a227459ede45d147562917f67e1c64 +$(PKG)_VERSION := 0.44.0 +$(PKG)_SUBDIR := openmw-openmw-$($(PKG)_VERSION) +$(PKG)_CHECKSUM := 9e7db99dd3e1434b2e32e9e61ae5a8fb516a69bb6880fb2856c09f2c9ca8cf0d $(PKG)_GH_CONF := openmw/openmw/releases -$(PKG)_URL_2 := https://github.com/openmw/openmw/archive/openmw-$($(PKG)_VERSION).tar.gz +$(PKG)_URL_2 := https://github.com/openmw/openmw/archive/openmw-$($(PKG)_VERSION).tar.gz $(PKG)_DEPS := cc bullet qt openscenegraph boost ffmpeg openal sdl2 mygui -$(PKG)_BINARY_LOCATION := $(PREFIX)/$(TARGET)/opt/openmw define $(PKG)_BUILD - cd '$(BUILD_DIR)' && $(TARGET)-cmake '$(SOURCE_DIR)' \ - -DMyGUI_LIBRARY=$(PREFIX)/$(TARGET)/lib/Release/libMyGUIEngineStatic.a \ - -DMYGUI_STATIC=ON \ - -DBOOST_STATIC=ON \ - -DSDL2_STATIC=ON \ - -DOSG_STATIC=ON \ - -DQT_STATIC=ON \ - -DRECASTNAVIGATION_STATIC=ON \ - -DBUILD_OPENCS=OFF \ - -DBUILD_NIFTEST=OFF \ - -DBUILD_LAUNCHER=OFF \ - -DBUILD_WIZARD=OFF \ - -DBUILD_MWINIIMPORTER=OFF \ - -DBUILD_ESSIMPORTER=OFF \ - -DBUILD_BSATOOL=OFF \ - -DBUILD_ESMTOOL=OFF \ - -DBoost_ALL_NO_LIB=ON \ - -DCMAKE_BUILD_TYPE=None \ - -DBUILD_SHARED_LIBS=OFF \ - -DCMAKE_CXX_FLAGS="-static -Wa,-mbig-obj -Wl,-Bstatic -DAL_LIBTYPE_STATIC" \ - -DOPENMW_CUSTOM_FLAGS="-Wl,-Bstatic $(PREFIX)/$(TARGET)/lib/libOpenAL32.a `$(TARGET)-pkg-config --cflags --libs openal freetype2 sdl2 gl libavcodec libavdevice libavfilter libavformat libavresample libavutil`" - $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' VERBOSE=1 + -DMyGUI_LIBRARY=$(PREFIX)/$(TARGET)/lib/Release/libMyGUIEngineStatic.a \ + -DMYGUI_STATIC=ON \ + -DBOOST_STATIC=ON \ + -DSDL2_STATIC=ON \ + -DOSG_STATIC=ON \ + -DOSG_PLUGINS_DIR=$(PREFIX)/$(TARGET)/lib/osgPlugins-${openscenegraph_VERSION}.0 \ + -DQT_STATIC=ON \ + -DRECASTNAVIGATION_STATIC=ON \ + -DBUILD_OPENCS=OFF \ + -DBUILD_NIFTEST=OFF \ + -DBUILD_LAUNCHER=OFF \ + -DBUILD_WIZARD=OFF \ + -DBUILD_MWINIIMPORTER=OFF \ + -DBUILD_ESSIMPORTER=OFF \ + -DBUILD_BSATOOL=OFF \ + -DBUILD_ESMTOOL=OFF \ + -DBUILD_SHARED_LIBS=OFF \ + -DCMAKE_CXX_FLAGS="-static -Wa,-mbig-obj -Wl,-Bstatic -DAL_LIBTYPE_STATIC" \ + -DOPENMW_STATIC=ON \ + -DOPENMW_CXX_FLAGS="-Wl,-Bstatic `$(TARGET)-pkg-config --static --cflags --libs libjpeg openal freetype2 sdl2 gl libavcodec libavdevice libavfilter libavformat libavresample libavutil`" + $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' VERBOSE=1 $(TARGET)-strip '$(BUILD_DIR)/openmw.exe' - mkdir -p '$($(PKG)_BINARY_LOCATION)' - cp '$(BUILD_DIR)/openmw.exe' '$($(PKG)_BINARY_LOCATION)' + mkdir -p '$(PREFIX)/$(TARGET)/opt/openmw' + cp '$(BUILD_DIR)/openmw.exe' '$(PREFIX)/$(TARGET)/opt/openmw' endef