functional build on mac os mojave

This commit is contained in:
Kai Philipp committed 2019-07-29 07:38:58 +02:00
1 parent add886ebee
commit 20252a02e0
112 files changed
+96085 -82814

No files matched your search

+5 -1
View File
@@ -18,4 +18,8 @@ uics/
make.sh
gitpush_serverstuff_stable
pokerth_server
.vscode
,qmake.stash
pokerth.ap*
*.DS_STORE
.gitignore.save
+44
View File
@@ -0,0 +1,44 @@
QMAKE_MAC_SDK.macosx.Path = /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk
QMAKE_MAC_SDK.macosx.SDKVersion = 10.14.6
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_CC = /Library/Developer/CommandLineTools/usr/bin/clang
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_CXX = /Library/Developer/CommandLineTools/usr/bin/clang++
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_FIX_RPATH = \
/Library/Developer/CommandLineTools/usr/bin/install_name_tool \
-id
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_AR = \
/Library/Developer/CommandLineTools/usr/bin/ar \
cq
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_RANLIB = \
/Library/Developer/CommandLineTools/usr/bin/ranlib \
-s
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_LINK = /Library/Developer/CommandLineTools/usr/bin/clang++
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_LINK_SHLIB = /Library/Developer/CommandLineTools/usr/bin/clang++
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_LINK_C = /Library/Developer/CommandLineTools/usr/bin/clang
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_LINK_C_SHLIB = /Library/Developer/CommandLineTools/usr/bin/clang
QMAKE_CXX.QT_COMPILER_STDCXX = 199711L
QMAKE_CXX.QMAKE_APPLE_CC = 6000
QMAKE_CXX.QMAKE_APPLE_CLANG_MAJOR_VERSION = 10
QMAKE_CXX.QMAKE_APPLE_CLANG_MINOR_VERSION = 0
QMAKE_CXX.QMAKE_APPLE_CLANG_PATCH_VERSION = 1
QMAKE_CXX.QMAKE_GCC_MAJOR_VERSION = 4
QMAKE_CXX.QMAKE_GCC_MINOR_VERSION = 2
QMAKE_CXX.QMAKE_GCC_PATCH_VERSION = 1
QMAKE_CXX.COMPILER_MACROS = \
QT_COMPILER_STDCXX \
QMAKE_APPLE_CC \
QMAKE_APPLE_CLANG_MAJOR_VERSION \
QMAKE_APPLE_CLANG_MINOR_VERSION \
QMAKE_APPLE_CLANG_PATCH_VERSION \
QMAKE_GCC_MAJOR_VERSION \
QMAKE_GCC_MINOR_VERSION \
QMAKE_GCC_PATCH_VERSION
QMAKE_CXX.INCDIRS = \
/Library/Developer/CommandLineTools/usr/include/c++/v1 \
/Library/Developer/CommandLineTools/usr/lib/clang/10.0.1/include \
/Library/Developer/CommandLineTools/usr/include \
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include
QMAKE_CXX.LIBDIRS = /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib
QMAKE_XCODE_DEVELOPER_PATH = /Library/Developer/CommandLineTools
QMAKE_MAC_SDK.macosx.PlatformPath = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform
QMAKE_MAC_SDK.macx-clang.macosx.QMAKE_ACTOOL = /Applications/Xcode.app/Contents/Developer/usr/bin/actool
QMAKE_XCODE_VERSION = 10.3
+1 -36
View File
@@ -1,36 +1 @@
Requirements
============
To compile PokerTH you need following libs:
Linux:
- Qt version >= 4.4.3, 4.8.x recommended --> http://qtsoftware.com/
- zlib version >= 1.2.3 --> http://www.zlib.net/
- libcurl version >= 7.16 --> http://curl.haxx.se/
- libgcrypt (e.g. version 1.4.6) --> http://www.gnu.org/software/libgcrypt/
- libgsasl version >= 1.4 --> http://www.gnu.org/software/gsasl/
- libboost_thread, libboost_filesystem, libboost_datetime, libboost_program_options,
libboost_iostreams, libboost_asio, libboost_regex, libboost_random, libboost_uuid
(version >= 1.49, latest always recommended) --> http://www.boost.org/
- libSDL_mixer, libSDL --> http://www.libsdl.org/
- libSQLite3 --> http://sqlite.org/
- libtinyxml > 2.0 --> http://www.sourceforge.net/projects/tinyxml
- protoc >= 2.3.0 (during build), libprotobuf >= 2.3.0 -> https://github.com/google/protobuf
- For the server: libircclient 1.3 --> http://www.sourceforge.net/projects/libircclient/
Windows:
see docs/build_mingw_windows.txt
Basic Installation
==================
Linux:
1. Type "cd path/to/the/sources". Then do for example "/usr/qt/4/bin/qmake pokerth.pro" to configure the makefile for your system.
Pay attention that the QTDIR environment variable points to Qt4 not Qt3. For example QTDIR=/usr/qt/4.
You can set this variable typing: "export QTDIR=/usr/qt/4"
2. Type "make" to compile the package.
3. Become root (typing "su") and type "make install" to install the program binary.
see https://github.com/pokerth/pokerth/wiki/Building-PokerTH
+57 -5
View File
@@ -9,12 +9,13 @@
# of binary-size if you leave Qt out.
# (see http://trolltech.com/developer/downloads/qt/mac)
QT_FW_PATH="/Users/$USER/Qt/5.9/clang_64/lib"
QT_PLUGIN_PATH="/Users/$USER/Qt/5.9/clang_64/plugins"
QT_FW_PATH="/usr/local/Cellar/qt/5.13.0/lib"
QT_PLUGIN_PATH="/usr/local/Cellar/qt/5.13.0/plugins"
SDL_FW_PATH="/Library/Frameworks"
APPLICATION="./pokerth.app"
BINARY="$APPLICATION/Contents/MacOs/pokerth"
RESOURCES="$APPLICATION/Contents/Resources"
DYLIB_PATH="$APPLICATION/Contents/MacOs/dylibs"
# strip binary
strip $BINARY
@@ -23,18 +24,50 @@ cp -R ./data $RESOURCES/
find $RESOURCES/data -name ".svn" | xargs rm -Rf
# create framework-path
BINARY_FW_PATH="$APPLICATION/Contents/Frameworks"
mkdir $BINARY_FW_PATH
BINARY_PLUGIN_PATH="$APPLICATION/Contents/plugins"
rm -rf $BINARY_FW_PATH
rm -rf $BINARY_PLUGIN_PATH
rm -rf $DYLIB_PATH
mkdir $BINARY_FW_PATH
mkdir -p $BINARY_PLUGIN_PATH/imageformats
mkdir -p $BINARY_PLUGIN_PATH/sqldrivers
mkdir -p $BINARY_PLUGIN_PATH/platforms
mkdir -p $DYLIB_PATH
# integrate SDL-frameworks into binary
cp -R $SDL_FW_PATH/SDL.framework $BINARY_FW_PATH
cp -R $SDL_FW_PATH/SDL_mixer.framework $BINARY_FW_PATH
# integrate Qt-frameworks into binary
# integrate dylibs
cp /usr/lib/libcurl.4.dylib $DYLIB_PATH/.
cp /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib $DYLIB_PATH/.
cp /usr/local/opt/openssl/lib/libssl.1.0.0.dylib $DYLIB_PATH/.
cp /usr/lib/libsqlite3.dylib $DYLIB_PATH/.
cp /usr/local/opt/tinyxml/lib/libtinyxml.dylib $DYLIB_PATH/.
cp /usr/local/opt/protobuf/lib/libprotobuf.18.dylib $DYLIB_PATH/.
cp /usr/lib/libz.1.dylib $DYLIB_PATH/.
LIBCURL_LINK=$(otool -L $BINARY | grep libcurl | cut -d"(" -f1 | cut -f2)
LIBCRYPTO_LINK=$(otool -L $BINARY | grep libcrypto | cut -d"(" -f1 | cut -f2)
LIBSSL_LINK=$(otool -L $BINARY | grep libssl | cut -d"(" -f1 | cut -f2)
LIBTINYXML_LINK=$(otool -L $BINARY | grep libtinyxml | cut -d"(" -f1 | cut -f2)
LIBSQLITE_LINK=$(otool -L $BINARY | grep libsqlite | cut -d"(" -f1 | cut -f2)
LIBPROTOBUF_LINK=$(otool -L $BINARY | grep libprotobuf | cut -d"(" -f1 | cut -f2)
LIBZ_LINK=$(otool -L $BINARY | grep libz | cut -d"(" -f1 | cut -f2)
install_name_tool -change $LIBCURL_LINK @loader_path/dylibs/libcurl.4.dylib $BINARY
install_name_tool -change $LIBCRYPTO_LINK @loader_path/dylibs/libcrypto.1.0.0.dylib $BINARY
install_name_tool -change $LIBSSL_LINK @loader_path/dylibs/libssl.1.0.0.dylib $BINARY
install_name_tool -change $LIBSSL_LINK @loader_path/dylibs/libssl.1.0.0.dylib $APPLICATION/Contents/MacOS/dylibs/libcrypto.1.0.0.dylib
install_name_tool -change $LIBTINYXML_LINK @loader_path/dylibs/libtinyxml.dylib $BINARY
install_name_tool -change $LIBSQLITE_LINK @loader_path/dylibs/libsqlite3.dylib $BINARY
install_name_tool -change $LIBPROTOBUF_LINK @loader_path/dylibs/libprotobuf.18.dylib $BINARY
install_name_tool -change $LIBSQLITE_LINK @loader_path/dylibs/libsqlite3.dylib $BINARY
install_name_tool -change $LIBZ_LINK @loader_path/dylibs/libz.1.dylib $BINARY
# integrate Qt-frameworks into binary
if [ "$1" != "--without-qt" ] ; then
cp $QT_PLUGIN_PATH/imageformats/libqgif.dylib $BINARY_PLUGIN_PATH/imageformats
cp $QT_PLUGIN_PATH/imageformats/libqjpeg.dylib $BINARY_PLUGIN_PATH/imageformats
@@ -46,6 +79,8 @@ if [ "$1" != "--without-qt" ] ; then
cp -R $QT_FW_PATH/QtSql.framework $BINARY_FW_PATH
cp -R $QT_FW_PATH/QtNetwork.framework $BINARY_FW_PATH
cp -R $QT_FW_PATH/QtPrintSupport.framework $BINARY_FW_PATH
cp -R /usr/local/Cellar/qt/5.13.0/lib/QtDBus.framework $BINARY_FW_PATH
chmod -R 775 $BINARY_FW_PATH
# remove debug versions
rm -f $APPLICATION/Contents/Frameworks/QtCore.framework/QtCore_debug
rm -f $APPLICATION/Contents/Frameworks/QtCore.framework/QtCore_debug.prl
@@ -65,6 +100,9 @@ if [ "$1" != "--without-qt" ] ; then
rm -f $APPLICATION/Contents/Frameworks/QtPrintSupport.framework/QtPrintSupport_debug
rm -f $APPLICATION/Contents/Frameworks/QtPrintSupport.framework/QtPrintSupport_debug.prl
rm -f $APPLICATION/Contents/Frameworks/QtPrintSupport.framework/Versions/5/QtPrintSupport_debug
rm -f $APPLICATION/Contents/Frameworks/QtDBus.framework/QtDBus_debug
rm -f $APPLICATION/Contents/Frameworks/QtDBus.framework/QtDBus_debug.prl
rm -f $APPLICATION/Contents/Frameworks/QtDBus.framework/Versions/5/QtDBus_debug
# redirect binary to use integrated frameworks
QTCORE="QtCore.framework/Versions/5/QtCore"
@@ -73,18 +111,20 @@ if [ "$1" != "--without-qt" ] ; then
QTSQL="QtSql.framework/Versions/5/QtSql"
QTNETWORK="QtNetwork.framework/Versions/5/QtNetwork"
QTPRINT="QtPrintSupport.framework/Versions/5/QtPrintSupport"
QTDBUS="QtDBus.framework/Versions/5/QtDBus"
install_name_tool -id @executable_path/../Frameworks/$QTCORE $BINARY_FW_PATH/$QTCORE
install_name_tool -id @executable_path/../Frameworks/$QTGUI $BINARY_FW_PATH/$QTGUI
install_name_tool -id @executable_path/../Frameworks/$QTWIDGETS $BINARY_FW_PATH/$QTWIDGETS
install_name_tool -id @executable_path/../Frameworks/$QTSQL $BINARY_FW_PATH/$QTSQL
install_name_tool -id @executable_path/../Frameworks/$QTNETWORK $BINARY_FW_PATH/$QTNETWORK
install_name_tool -id @executable_path/../Frameworks/$QTPRINT $BINARY_FW_PATH/$QTPRINT
install_name_tool -id @executable_path/../Frameworks/$QDBUS $BINARY_FW_PATH/$QTDBUS
QTCORE_LINK=$(otool -L $BINARY | grep QtCore | cut -d"(" -f1 | cut -f2)
QTGUI_LINK=$(otool -L $BINARY | grep QtGui | cut -d"(" -f1 | cut -f2)
QTWIDGETS_LINK=$(otool -L $BINARY | grep QtWidgets | cut -d"(" -f1 | cut -f2)
QTSQL_LINK=$(otool -L $BINARY | grep QtSql | cut -d"(" -f1 | cut -f2)
QTNETWORK_LINK=$(otool -L $BINARY | grep QtNetwork | cut -d"(" -f1 | cut -f2)
QTPRINT_LINK=$(otool -L $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib | grep QtPrintSupport | cut -d"(" -f1 | cut -f2)
install_name_tool -change $QTCORE_LINK @executable_path/../Frameworks/$QTCORE $BINARY
install_name_tool -change $QTGUI_LINK @executable_path/../Frameworks/$QTGUI $BINARY
install_name_tool -change $QTWIDGETS_LINK @executable_path/../Frameworks/$QTWIDGETS $BINARY
@@ -98,10 +138,22 @@ if [ "$1" != "--without-qt" ] ; then
install_name_tool -change $QTWIDGETS_LINK @executable_path/../Frameworks/$QTWIDGETS $BINARY_PLUGIN_PATH/imageformats/libqjpeg.dylib
install_name_tool -change $QTCORE_LINK @executable_path/../Frameworks/$QTCORE $BINARY_PLUGIN_PATH/sqldrivers/libqsqlite.dylib
install_name_tool -change $QTSQL_LINK @executable_path/../Frameworks/$QTSQL $BINARY_PLUGIN_PATH/sqldrivers/libqsqlite.dylib
QTDBUS_LINK=$(otool -L $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib | grep QtDBus | cut -d"(" -f1 | cut -f2)
QTPRINT_LINK=$(otool -L $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib | grep QtPrintSupport | cut -d"(" -f1 | cut -f2)
QTZ_LINK=$(otool -L $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib | grep libz | cut -d"(" -f1 | cut -f2)
QTCORE_LINK=$(otool -L $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib | grep QtCore | cut -d"(" -f1 | cut -f2)
QTGUI_LINK=$(otool -L $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib | grep QtGui | cut -d"(" -f1 | cut -f2)
QTWIDGETS_LINK=$(otool -L $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib | grep QtWidgets | cut -d"(" -f1 | cut -f2)
install_name_tool -change $QTCORE_LINK @executable_path/../Frameworks/$QTCORE $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib
install_name_tool -change $QTGUI_LINK @executable_path/../Frameworks/$QTGUI $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib
install_name_tool -change $QTWIDGETS_LINK @executable_path/../Frameworks/$QTWIDGETS $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib
install_name_tool -change $QTPRINT_LINK @executable_path/../Frameworks/$QTPRINT $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib
install_name_tool -change $QTDBUS_LINK @executable_path/../Frameworks/$QTDBUS $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib
install_name_tool -change $QTZ_LINK @loader_path/dylibs/libz.1.dylib $BINARY_PLUGIN_PATH/platforms/libqcocoa.dylib
QTCORE_LINK=$(otool -L $BINARY_FW_PATH/$QTDBUS | grep QtCore | head -1 | cut -d"(" -f1 | cut -f2)
install_name_tool -change $QTCORE_LINK @executable_path/../Frameworks/$QTCORE $BINARY_FW_PATH/$QTDBUS
QTCORE_LINK=$(otool -L $BINARY_FW_PATH/$QTGUI | grep QtCore | head -1 | cut -d"(" -f1 | cut -f2)
install_name_tool -change $QTCORE_LINK @executable_path/../Frameworks/$QTCORE $BINARY_FW_PATH/$QTGUI
+1 -1
View File
@@ -60,7 +60,7 @@ mac{
CONFIG += x86_64
CONFIG -= x86
CONFIG -= ppc
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.12
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
QMAKE_CXXFLAGS -= -std=gnu++0x
# for universal-compilation on PPC-Mac uncomment the following line
+6 -5
View File
@@ -576,7 +576,7 @@ mac {
CONFIG += x86_64
CONFIG -= x86
CONFIG -= ppc
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.12
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
QMAKE_CXXFLAGS -= -std=gnu++0x
# workaround for problems with boost_filesystem exceptions
@@ -587,12 +587,13 @@ mac {
# QMAKE_MAC_SDK=/Developer/SDKs/MacOSX10.4u.sdk/
LIBPATH += lib
# QT dynamic linked framework (see also mac_post_make.sh)
LIBS += -F /Library/Frameworks
LIBS += -framework \
QtCore
LIBS += -framework \
QtGui
# LIBS += -framework \
# QtCore
# LIBS += -framework \
# QtGui
LIBS += -framework \
SDL
LIBS += -framework \
+1 -1
View File
@@ -294,7 +294,7 @@ mac{
CONFIG += x86_64
CONFIG -= x86
CONFIG -= ppc
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.12
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
QMAKE_CXXFLAGS -= -std=gnu++0x
# for universal-compilation on PPC-Mac uncomment the following line
+4 -1
View File
@@ -56,7 +56,10 @@ mac {
CONFIG += x86_64
CONFIG -= x86
CONFIG -= ppc
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.12
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
system(protoc pokerth.proto --cpp_out=src/third_party/protobuf)
system(protoc chatcleaner.proto --cpp_out=src/third_party/protobuf)
system(protoc pokerth.proto --java_out=tests/src)
# for universal-compilation on PPC-Mac uncomment the following line
# on Intel-Mac you have to comment this line out or build will fail.
+1 -1
View File
@@ -310,7 +310,7 @@ mac {
CONFIG += x86_64
CONFIG -= x86
CONFIG -= ppc
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.12
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
QMAKE_CXXFLAGS -= -std=gnu++0x
# workaround for problems with boost_filesystem exceptions
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+37119 -26440
View File
File diff suppressed because it is too large. Load diff
+12816 -11203
View File
File diff suppressed because it is too large. Load diff
File renamed without changes.
Loaded 100 of 112 files, more files were not shown because too many files have changed in this diff. Show more