Re: [hatari-devel] Things still remaining before v1.8 release?

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Thanks - now, after the fact, I consider it to be demystified :) 

Attached is the [current] checklist I've written down when producing these builds. Steps 1-9 are what I change from the Xcode project defaults. I've not looked into whether or where this could be changed in those to remove all the manual steps.

(If anyone replicates the builds using these notes please let me know they're complete :)

regards,
Troed



On Thu, Jul 31, 2014 at 8:36 PM, Nicolas Pomarède <npomarede@xxxxxxxxxxxx> wrote:

That's great news, so I will add the dmg built by Troed to the download area for 1.8.0 and post the final announcement.

Thanks a lot for taking the time to dive into the mysteries of xcode :)


Prerequisite: SDL.Framework 1.2.15, CAPSImage.framework 4.2 (user version), universal builds of libpng16.16.dylib and libportaudio.2.dylib. The latter can be created with Macports (‘port install libpng +universal’ etc)

0) ‘cmake -G Xcode’ (generates the Xcode project - note - will overwrite any existing)
0.5) use ‘ccmake .’ to set Falcon (ENABLE_WINUAE_CPU) mode (‘configure' doesn’t overwrite project files, ‘generate' will)

1) Project Hatari  set “Active architecture only” to No
2)                 OSX Deployment target: 10.5
3)                 Runpath search path = @loader_path/../Frameworks
4)                 Always search user paths: No
5)                 Framework search paths: $(SRCROOT)
6) Target hatari   Other Linker Flags - remove libSDL-files and -lcapsimage if needed
7)                 Build phases - copy frameworks, tos and dylibs (when adding them to project, use Xcode defaults)
8)                 Build phases - add two build scripts* 
9)                 Build phases - add “link binary with libraries” - add dylibs and frameworks

*) scripts:

***
#!/bin/bash
EXECFILE=${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}
LIBPATH=${BUILT_PRODUCTS_DIR}/${SHARED_SUPPORT_FOLDER_PATH}
NEWLIBPATH="@executable_path/../SharedSupport"

# space separated list of libraries
TARGETS="libpng16.16.dylib libportaudio.2.dylib"
for TARGET in ${TARGETS} ; do
LIBFILE=${LIBPATH}/${TARGET}
TARGETID=`otool -DX ${LIBPATH}/$TARGET`
NEWTARGETID=${NEWLIBPATH}/${TARGET}
install_name_tool -id ${NEWTARGETID} ${LIBFILE}
install_name_tool -change ${TARGETID} ${NEWTARGETID} ${EXECFILE}
done
***
#!/bin/bash
EXECFILE=${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}
LIBPATH=${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}
NEWLIBPATH="@executable_path/../Frameworks"

# space separated list of libraries
TARGETS="CAPSImage.framework/CAPSImage SDL.Framework/SDL"
for TARGET in ${TARGETS} ; do
LIBFILE=${LIBPATH}/${TARGET}
TARGETID=`otool -DX ${LIBPATH}/$TARGET`
NEWTARGETID=${NEWLIBPATH}/${TARGET}
install_name_tool -id ${NEWTARGETID} ${LIBFILE}
install_name_tool -change ${TARGETID} ${NEWTARGETID} ${EXECFILE}
done
***


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/