First successful macOS compile. Untested binary.

This commit is contained in:
Scott Duensing 2020-03-18 18:30:37 -05:00
parent 9d31928789
commit 598b5eff5e
3 changed files with 88 additions and 42 deletions

View file

@ -56,12 +56,12 @@ function doBuild() {
O=${O%.*}.o O=${O%.*}.o
OFILES="${OFILES} ${O}" OFILES="${OFILES} ${O}"
echo "Compiling ${SOURCE}..." echo "Compiling ${SOURCE}..."
${CROSS}-gcc ${QMAKE_CFLAGS} ${EXTRA_CFLAGS} -c "${SOURCE}" -o ${O} ${CROSS}-${CCOMPILER} ${QMAKE_CFLAGS} ${EXTRA_CFLAGS} -c "${SOURCE}" -o ${O}
done done
TARGET="${SOURCE_DIR}/../build/${OSNAME}/${OSARCH}/${TARGET}${EXT}" TARGET="${SOURCE_DIR}/../build/${OSNAME}/${OSARCH}/${TARGET}${EXT}"
echo "Linking ${TARGET}..." 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}..." echo "Compressing ${TARGET}..."
#${CROSS}-strip "${TARGET}" #${CROSS}-strip "${TARGET}"
@ -73,21 +73,25 @@ function doBuild() {
# 64 Bit Linux # 64 Bit Linux
echo -e "${G_L}\nLinux x86_64\n${G_L}" echo -e "${G_L}\nLinux x86_64\n${G_L}"
CROSS="x86_64-linux-gnu" CROSS="x86_64-linux-gnu"
CCOMPILER="gcc"
CPPCOMPILER="g++"
EXTRA_CFLAGS="-O2" EXTRA_CFLAGS="-O2"
EXTRA_OFILES="" EXTRA_OFILES=""
EXTRA_LD_FLAGS="-l:everything.a -lpthread -lXv -lX11 -lXext -lm -ldl -lrt" 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 # 64 Bit Windows
echo -e "${G_L}\nWindows x86_64\n${G_L}" echo -e "${G_L}\nWindows x86_64\n${G_L}"
CROSS="x86_64-w64-mingw32" CROSS="x86_64-w64-mingw32"
CCOMPILER="gcc"
CPPCOMPILER="g++"
EXTRA_CFLAGS="-O2" EXTRA_CFLAGS="-O2"
EXTRA_OFILES="/tmp/singe.res" 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" 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 xcf2png icon.xcf -o /tmp/icon.png
icotool -c -o /tmp/icon.ico /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 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.ico
rm /tmp/icon.png rm /tmp/icon.png
rm /tmp/singe.res rm /tmp/singe.res
@ -97,7 +101,21 @@ rm /tmp/singe.res
echo -e "${G_L}\nLinux armv6\n${G_L}" echo -e "${G_L}\nLinux armv6\n${G_L}"
SYSROOT="/opt/cross/pi/buster" SYSROOT="/opt/cross/pi/buster"
CROSS="/opt/cross/pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf" 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_CFLAGS="-O2 --sysroot ${SYSROOT}"
EXTRA_OFILES="" 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" 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}

View file

@ -485,43 +485,71 @@ MORE_CFLAGS="${MORE_CFLAGS} -I${G_INSTALLED}/include/SDL2" \
if [[ ! -e "${G_INSTALLED}/lib/everything.a" ]]; then if [[ ! -e "${G_INSTALLED}/lib/everything.a" ]]; then
pushd "${G_INSTALLED}/lib" pushd "${G_INSTALLED}/lib"
if [[ "${G_PLATFORM}" == "mac" ]]; then 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 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 fi
${MY_AR} -M <<-LIBS ln -sf everything.a libeverything.a
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
popd popd
fi fi

View file

@ -367,8 +367,8 @@ static void macosx_hidmanager_quit(void)
static int macosx_hidmanager_init(void) static int macosx_hidmanager_init(void)
{ {
if (IOHIDManagerCreate == NULL) //if (IOHIDManagerCreate == NULL)
return -1; /* weak symbol is NULL...we don't have OS X >= 10.5.0 */ // return -1; /* weak symbol is NULL...we don't have OS X >= 10.5.0 */
macosx_hidmanager_quit(); /* just in case... */ macosx_hidmanager_quit(); /* just in case... */