diff --git a/singe/buildRelease.sh b/singe/buildRelease.sh index 2cfdd60e4..03009fb79 100755 --- a/singe/buildRelease.sh +++ b/singe/buildRelease.sh @@ -56,12 +56,12 @@ function doBuild() { O=${O%.*}.o OFILES="${OFILES} ${O}" echo "Compiling ${SOURCE}..." - ${CROSS}-gcc ${QMAKE_CFLAGS} ${EXTRA_CFLAGS} -c "${SOURCE}" -o ${O} + ${CROSS}-${CCOMPILER} ${QMAKE_CFLAGS} ${EXTRA_CFLAGS} -c "${SOURCE}" -o ${O} done TARGET="${SOURCE_DIR}/../build/${OSNAME}/${OSARCH}/${TARGET}${EXT}" echo "Linking ${TARGET}..." - ${CROSS}-g++ -o "${TARGET}" ${OFILES} ${EXTRA_OFILES} "-L${SOURCE_DIR}/../thirdparty-build/${OSNAME}/${OSARCH}/installed/lib" ${EXTRA_LD_FLAGS} + ${CROSS}-${CPPCOMPILER} -o "${TARGET}" ${OFILES} ${EXTRA_OFILES} "-L${SOURCE_DIR}/../thirdparty-build/${OSNAME}/${OSARCH}/installed/lib" ${EXTRA_LD_FLAGS} echo "Compressing ${TARGET}..." #${CROSS}-strip "${TARGET}" @@ -73,21 +73,25 @@ function doBuild() { # 64 Bit Linux echo -e "${G_L}\nLinux x86_64\n${G_L}" CROSS="x86_64-linux-gnu" +CCOMPILER="gcc" +CPPCOMPILER="g++" EXTRA_CFLAGS="-O2" EXTRA_OFILES="" EXTRA_LD_FLAGS="-l:everything.a -lpthread -lXv -lX11 -lXext -lm -ldl -lrt" -doBuild Singe-Linux-x86_64 linux 64 +#doBuild Singe-Linux-x86_64 linux 64 # 64 Bit Windows echo -e "${G_L}\nWindows x86_64\n${G_L}" CROSS="x86_64-w64-mingw32" +CCOMPILER="gcc" +CPPCOMPILER="g++" EXTRA_CFLAGS="-O2" EXTRA_OFILES="/tmp/singe.res" EXTRA_LD_FLAGS="-mwindows -static -lmingw32 -l:everything.a -lm -lbcrypt -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lshell32 -lsetupapi -lversion -luuid -Dmain=SDL_main" xcf2png icon.xcf -o /tmp/icon.png icotool -c -o /tmp/icon.ico /tmp/icon.png x86_64-w64-mingw32-windres singe.rc -O coff -o /tmp/singe.res -doBuild Singe-Windows-x86_64 mingw 64 .exe +#doBuild Singe-Windows-x86_64 mingw 64 .exe rm /tmp/icon.ico rm /tmp/icon.png rm /tmp/singe.res @@ -97,7 +101,21 @@ rm /tmp/singe.res echo -e "${G_L}\nLinux armv6\n${G_L}" SYSROOT="/opt/cross/pi/buster" CROSS="/opt/cross/pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf" +CCOMPILER="gcc" +CPPCOMPILER="g++" EXTRA_CFLAGS="-O2 --sysroot ${SYSROOT}" EXTRA_OFILES="" EXTRA_LD_FLAGS="--sysroot ${SYSROOT} -l:everything.a -Wl,-rpath-link,${SYSROOT}/opt/vc/lib -L${SYSROOT}/opt/vc/lib -lbcm_host -lasound -lpthread -lm -ldl -lsndio -lmmal_core -lmmal_util -lmmal_vc_client -lvdpau -ldrm -lgbm -lX11 -lsamplerate" -doBuild Singe-Pi-armv6 pi 32 +#doBuild Singe-Pi-armv6 pi 32 + +# 64 Bit macOS +echo -e "${G_L}\nmacOS x86_64\n${G_L}" +CROSS="x86_64-apple-darwin15" +CCOMPILER="clang" +CPPCOMPILER="clang++" +EXTRA_CFLAGS="-O2" +EXTRA_LD_FLAGS="-stdlib=libc++ -leverything -lm -liconv -Wl,-framework,CoreAudio -Wl,-framework,AudioUnit -Wl,-framework,AudioToolbox -Wl,-framework,ForceFeedback -lobjc -Wl,-framework,CoreVideo -Wl,-framework,Cocoa -Wl,-framework,Carbon -Wl,-framework,IOKit -Wl,-weak_framework,QuartzCore -Wl,-weak_framework,Metal" +O_MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} +export MACOSX_DEPLOYMENT_TARGET=10.8 +doBuild Singe-macOS-x86_64 mac 64 +export MACOSX_DEPLOYMENT_TARGET=${O_MACOSX_DEPLOYMENT_TARGET} diff --git a/singe/preBuild.sh b/singe/preBuild.sh index 105856b5c..e3364fee6 100755 --- a/singe/preBuild.sh +++ b/singe/preBuild.sh @@ -485,43 +485,71 @@ MORE_CFLAGS="${MORE_CFLAGS} -I${G_INSTALLED}/include/SDL2" \ if [[ ! -e "${G_INSTALLED}/lib/everything.a" ]]; then pushd "${G_INSTALLED}/lib" if [[ "${G_PLATFORM}" == "mac" ]]; then - MY_AR="ar" + ${G_CROSS}-libtool -o everything.a -static \ + libSDL2main.a \ + libSDL2.a \ + libSDL2_image.a \ + libpng16.a \ + libwebp.a \ + libjpeg.a \ + libSDL2_mixer.a \ + libFLAC.a \ + libmodplug.a \ + libmpg123.a \ + libvorbisfile.a \ + libvorbis.a \ + libogg.a \ + libopusfile.a \ + libopus.a \ + libSDL2_ttf.a \ + libfreetype.a \ + libharfbuzz.a \ + liblua.a \ + libffms2.a \ + libavformat.a \ + libavcodec.a \ + libswscale.a \ + libavutil.a \ + libswresample.a \ + libz.a \ + liblzma.a \ + libbz2.a else - MY_AR="${G_CROSS}-ar" + ${G_CROSS}-ar -M <<-LIBS + CREATE everything.a + ADDLIB libSDL2main.a + ADDLIB libSDL2.a + ADDLIB libSDL2_image.a + ADDLIB libpng16.a + ADDLIB libwebp.a + ADDLIB libjpeg.a + ADDLIB libSDL2_mixer.a + ADDLIB libFLAC.a + ADDLIB libmodplug.a + ADDLIB libmpg123.a + ADDLIB libvorbisfile.a + ADDLIB libvorbis.a + ADDLIB libogg.a + ADDLIB libopusfile.a + ADDLIB libopus.a + ADDLIB libSDL2_ttf.a + ADDLIB libfreetype.a + ADDLIB libharfbuzz.a + ADDLIB liblua.a + ADDLIB libffms2.a + ADDLIB libavformat.a + ADDLIB libavcodec.a + ADDLIB libswscale.a + ADDLIB libavutil.a + ADDLIB libswresample.a + ADDLIB libz.a + ADDLIB liblzma.a + ADDLIB libbz2.a + SAVE + END + LIBS fi - ${MY_AR} -M <<-LIBS - CREATE everything.a - ADDLIB libSDL2main.a - ADDLIB libSDL2.a - ADDLIB libSDL2_image.a - ADDLIB libpng16.a - ADDLIB libwebp.a - ADDLIB libjpeg.a - ADDLIB libSDL2_mixer.a - ADDLIB libFLAC.a - ADDLIB libmodplug.a - ADDLIB libmpg123.a - ADDLIB libvorbisfile.a - ADDLIB libvorbis.a - ADDLIB libogg.a - ADDLIB libopusfile.a - ADDLIB libopus.a - ADDLIB libSDL2_ttf.a - ADDLIB libfreetype.a - ADDLIB libharfbuzz.a - ADDLIB liblua.a - ADDLIB libffms2.a - ADDLIB libavformat.a - ADDLIB libavcodec.a - ADDLIB libswscale.a - ADDLIB libavutil.a - ADDLIB libswresample.a - ADDLIB libz.a - ADDLIB liblzma.a - ADDLIB libbz2.a - SAVE - END - LIBS + ln -sf everything.a libeverything.a popd fi diff --git a/singe/thirdparty/manymouse/macosx_hidmanager.c b/singe/thirdparty/manymouse/macosx_hidmanager.c index b28792eca..e201f4824 100644 --- a/singe/thirdparty/manymouse/macosx_hidmanager.c +++ b/singe/thirdparty/manymouse/macosx_hidmanager.c @@ -367,8 +367,8 @@ static void macosx_hidmanager_quit(void) static int macosx_hidmanager_init(void) { - if (IOHIDManagerCreate == NULL) - return -1; /* weak symbol is NULL...we don't have OS X >= 10.5.0 */ + //if (IOHIDManagerCreate == NULL) + // return -1; /* weak symbol is NULL...we don't have OS X >= 10.5.0 */ macosx_hidmanager_quit(); /* just in case... */