osx: actually install headers and add custom handling of freetype and librasterlite

This commit is contained in:
Dane Springmeyer 2010-12-22 06:59:45 +00:00
parent 0bc3c1bf33
commit b2d99c8541
2 changed files with 57 additions and 10 deletions

View file

@ -18,10 +18,10 @@ tar xvf icu4c-4_6-src.tgz
cd icu/source
# universal flags
export CFLAGS="-Os -arch i386 -arch x86_64"
export CXXFLAGS="-Os -arch i386 -arch x86_64"
export CFLAGS="-O3 -arch i386 -arch x86_64"
export CXXFLAGS="-O3 -arch i386 -arch x86_64"
export LDFLAGS="-arch i386 -arch x86_64 -headerpad_max_install_names"
./runConfigureICU MacOSX --prefix=$PREFIX --disable-static --enable-shared --disable-extras --disable-samples --with-library-bits=64
./runConfigureICU MacOSX --prefix=$PREFIX --disable-static --enable-shared --disable-samples --disable-icuio --disable-layout --disable-tests --disable-extras --with-library-bits=64
make install -j4
# note -R is needed to preserve the symlinks
#cp -R lib/libicuuc.* ../../../sources/lib/
@ -95,3 +95,33 @@ install_name_tool -id $INSTALL/libboost_thread.dylib libboost_thread.dylib
install_name_tool -change libboost_system.dylib $INSTALL/libboost_system.dylib libboost_filesystem.dylib
#install_name_tool -change libicui18n.46.dylib $INSTALL/libicui18n.46.dylib libboost_regex.dylib
# rasterlite we must bundle as it is not available in the SQLite.framework
cd ../../deps
svn co https://www.gaia-gis.it/svn/librasterlite
export LDFLAGS="-arch i386 -arch x86_64 -headerpad_max_install_names -L/Library/Frameworks/SQLite3.framework/unix/lib -L/Library/Frameworks/UnixImageIO.framework/unix/lib -L/Library/Frameworks/PROJ.framework/unix/lib"
export CFLAGS="-Os -arch i386 -arch x86_64 -I/Library/Frameworks/SQLite3.framework/unix/include -I/Library/Frameworks/UnixImageIO.framework/unix/include -I/Library/Frameworks/PROJ.framework/unix/include"
export CXXFLAGS=$CFLAGS
cd librasterlite
./configure --disable-dependency-tracking --prefix=$PREFIX
make clean
make -j4
make install
cd ../../sources/lib
install_name_tool -id $INSTALL/librasterlite.0.dylib librasterlite.0.dylib
# freetype2
cd ../../deps
wget http://download.savannah.gnu.org/releases/freetype/freetype-2.4.4.tar.gz
tar xvf freetype-2.4.4.tar.gz
export CFLAGS="-O3 -arch i386 -arch x86_64"
export LDFLAGS="-arch i386 -arch x86_64 -headerpad_max_install_names"
cd freetype-2.4.4
./configure --prefix=$PREFIX
make -j4
make install
cd ../../sources/lib
install_name_tool -id $INSTALL/libfreetype.6.dylib libfreetype.6.dylib

View file

@ -54,16 +54,33 @@ if __name__ == "__main__":
# point top level 'unix' to active one
sym(join(active,'unix'),join(framework,'unix'))
# install boost and icu...
# recursive to preserve symlinks
# install icu libs
copy_all_items('sources/lib/libicuu*dylib',join(active,'unix/lib'),recursive=True)
copy_all_items('sources/lib/libicud*dylib',join(active,'unix/lib'),recursive=True)
copy_all_items('sources/lib/libicui1*dylib',join(active,'unix/lib'),recursive=True)
copy_all_items('sources/lib/libboost*dylib',join(active,'unix/lib'),recursive=True)
# move over headers
#TODO
# install icu includes
os.mkdir(join(active,'unix/include/unicode'))
copy_all_items('sources/include/unicode/*',join(active,'unix/include/unicode'),recursive=True)
# install boost libs
copy_all_items('sources/lib/libboost*dylib',join(active,'unix/lib'),recursive=True)
# install boost includes
os.mkdir(join(active,'unix/include/boost'))
copy_all_items('sources/include/boost/*',join(active,'unix/include/boost'),recursive=True)
# install rasterlite lib
copy_all_items('sources/lib/librasterlite*dylib',join(active,'unix/lib'),recursive=True)
# install freetype2 libs
copy_all_items('sources/lib/libfreetype*dylib',join(active,'unix/lib'),recursive=True)
# install freetype2 includes
os.mkdir(join(active,'unix/include/freetype2'))
copy_all_items('sources/include/freetype2/*',join(active,'unix/include/freetype2'),recursive=True)
copy_all_items('sources/include/ft2build.h',join(active,'unix/include/'),recursive=True)
# Resources
os.mkdir(join(active,'Resources'))
# TODO - put docs and other stuff here...
@ -128,5 +145,5 @@ fontscollectionpath = '%(install_path)s/Mapnik.framework/Fonts'
open('/Library/Python/2.6/site-packages/mapnik.pth','w').write(pth)
# Stash in resources as well
open(join(active,'mapnik.pth'),'w').write(pth)
open(join(active,'Resources/mapnik.pth'),'w').write(pth)