commit 5be0d7d9169f81a08b46751b96961ae923b3bf6e Author: j Date: Mon Nov 4 02:39:46 2013 +0100 Open Media Library Platform (Darwin) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..95e8ff1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +src/*/ +dist +src/*.tar.* +*.swp +share +man +lib +include +bin diff --git a/build/PIL/build.sh b/build/PIL/build.sh new file mode 100755 index 0000000..a976793 --- /dev/null +++ b/build/PIL/build.sh @@ -0,0 +1,15 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=Imaging-1.1.7 +rm -rf $name +tar xzf $src/$name.tar.gz +cd $name + +export PATH=$prefix/bin:$PATH +python setup.py install +install_name_tool -change "$prefix/lib/libjpeg.62.dylib" "@rpath/libjpeg.62.dylib" $prefix/lib/python2.7/site-packages/PIL/_imaging.so +install_name_tool -change "$prefix/lib/libz.1.dylib" "@rpath/libz.1.dylib" $prefix/lib/python2.7/site-packages/PIL/_imaging.so +install_name_tool -change "$prefix/lib/libfreetype.6.dylib" "@rpath/libfreetype.6.dylib" $prefix/lib/python2.7/site-packages/PIL/_imagingft.so + diff --git a/build/Python/build.sh b/build/Python/build.sh new file mode 100755 index 0000000..2720e9b --- /dev/null +++ b/build/Python/build.sh @@ -0,0 +1,14 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=Python-2.7.6 +rm -rf $name +mkdir $name +cd $name + + +$src/$name/configure \ + --prefix=$prefix +make && make install +install_name_tool -add_rpath @loader_path/../lib $prefix/bin/python diff --git a/build/PythonPackages/build.sh b/build/PythonPackages/build.sh new file mode 100755 index 0000000..79337b6 --- /dev/null +++ b/build/PythonPackages/build.sh @@ -0,0 +1,5 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +$prefix/bin/pip install -r requirements.txt diff --git a/build/PythonPackages/requirements.txt b/build/PythonPackages/requirements.txt new file mode 100644 index 0000000..50854fb --- /dev/null +++ b/build/PythonPackages/requirements.txt @@ -0,0 +1,8 @@ +lxml +Twisted +simplejson +Flask==0.10.1 +SQLAlchemy==0.9.4 +Flask-SQLAlchemy==1.0 +Flask-Migrate==1.2.0 +ed25519 diff --git a/build/boost/build.sh b/build/boost/build.sh new file mode 100755 index 0000000..fd86931 --- /dev/null +++ b/build/boost/build.sh @@ -0,0 +1,14 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=boost_1_53_0 +rm -rf $name +tar xzf $src/$name.tar.gz +cd $name + +export PATH=$prefix/bin:$PATH +./bootstrap.sh \ + --prefix=$prefix \ + --with-python=$prefix/bin/python +./b2 install diff --git a/build/build.sh b/build/build.sh new file mode 100755 index 0000000..b4ee01c --- /dev/null +++ b/build/build.sh @@ -0,0 +1,13 @@ +#!/bin/sh +cd `dirname $0` +./zlib/build.sh +./jpeg/build.sh +./libpng/build.sh +./freetype/build.sh +./Python/build.sh +./pip/build.sh +./PIL/build.sh +./PythonPackages/build.sh + +#./boost/build.sh +#./libtorrent/build.sh diff --git a/build/env b/build/env new file mode 100644 index 0000000..ea20d7b --- /dev/null +++ b/build/env @@ -0,0 +1,16 @@ +build=`pwd` +cd ../.. +base=`pwd` +dist=$base/dist +src=$base/src +prefix=$base + +export PATH=$base/osx/build/bin:$PATH +export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=0 +export PKG_CONFIG_ALLOW_SYSTEM_LIBS=0 +export PKG_CONFIG_LIBDIR=$prefix/lib/pkgconfig +export PKG_CONFIG_PATH=$prefix/lib/pkgconfig +#export CFLAGS="-arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.5" +#export LDFLAGS="-arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.5" + +cd $build diff --git a/build/freetype/build.sh b/build/freetype/build.sh new file mode 100755 index 0000000..bb7e18e --- /dev/null +++ b/build/freetype/build.sh @@ -0,0 +1,18 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=freetype-2.5.0 +rm -rf $name +tar xzf $src/$name.tar.gz +cd $name + +export PATH=$prefix/bin:$PATH + +./configure \ + --without-zlib \ + --prefix=$prefix +make && make install +install_name_tool -change "$prefix/lib/libz.1.dylib" "@rpath/libz.1.dylib" $prefix/lib/libfreetype.6.dylib +install_name_tool -change "$prefix/lib/libpng12.0.dylib" "@rpath/libpng12.0.dylib" $prefix/lib/libfreetype.6.dylib + diff --git a/build/jpeg/build.sh b/build/jpeg/build.sh new file mode 100755 index 0000000..40b16ff --- /dev/null +++ b/build/jpeg/build.sh @@ -0,0 +1,14 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=jpeg-6b +rm -rf $name +tar xzf $src/$name.tar.gz +cd $name + +mkdir -p $prefix/man/man1/ +./configure \ + --enable-shared \ + --prefix=$prefix +make LIBTOOL=glibtool && make install LIBTOOL=glibtool diff --git a/build/libpng/build.sh b/build/libpng/build.sh new file mode 100755 index 0000000..2435ad2 --- /dev/null +++ b/build/libpng/build.sh @@ -0,0 +1,12 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=libpng-1.2.51 +rm -rf $name +tar xzf $src/$name.tar.gz +cd $name + +./configure \ + --prefix=$prefix +make && make install diff --git a/build/libtorrent/build.sh b/build/libtorrent/build.sh new file mode 100755 index 0000000..dd576d6 --- /dev/null +++ b/build/libtorrent/build.sh @@ -0,0 +1,25 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=libtorrent-rasterbar-0.16.12 +rm -rf $name +tar xzf $src/$name.tar.gz +cd $name + +export PATH=$prefix/bin:$PATH + +sed "s/if platform.system() != 'Darwin': //g" bindings/python/setup.py.in > setup.py.in +mv setup.py.in bindings/python/setup.py.in + +#breaks boost 1.54 +# --disable-encryption \ + +./configure \ + --enable-python-binding \ + --with-boost=$prefix \ + --prefix=$prefix +make && make install +install_name_tool -change "$prefix/lib/libtorrent-rasterbar.7.dylib" "@rpath/libtorrent-rasterbar.7.dylib" $prefix/lib/python2.7/site-packages/libtorrent.so +install_name_tool -change "libboost_system.dylib" "@rpath/libboost_system.dylib" $prefix/lib/python2.7/site-packages/libtorrent.so +install_name_tool -change libboost_system.dylib @rpath/libboost_system.dylib $prefix/lib/libtorrent-rasterbar.7.dylib diff --git a/build/pip/build.sh b/build/pip/build.sh new file mode 100755 index 0000000..24a7dd3 --- /dev/null +++ b/build/pip/build.sh @@ -0,0 +1,6 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +$prefix/bin/python $src/ez_setup.py +$prefix/bin/easy_install pip diff --git a/build/zlib/build.sh b/build/zlib/build.sh new file mode 100755 index 0000000..5d08fc2 --- /dev/null +++ b/build/zlib/build.sh @@ -0,0 +1,12 @@ +#!/bin/bash +cd `dirname $0` +. ../env + +name=zlib-1.2.8 +rm -rf $name +tar xzf $src/$name.tar.gz +cd $name + +./configure \ + --prefix=$prefix +make && make install diff --git a/make.sh b/make.sh new file mode 100755 index 0000000..4fb7b88 --- /dev/null +++ b/make.sh @@ -0,0 +1,42 @@ +cd `dirname $0` + +#./src/pull.sh +#./build/build.sh + +rm -rf dist +mkdir -p dist/bin dist/lib dist/include + +for bin in \ + python \ + python2 \ + python2.7 \ +; do + cp -a bin/$bin dist/bin/$bin +done + +for bin in \ + easy_install \ + easy_install-2.7 \ + pip \ + pip2.7 \ +; do + sed "s/#\!.*python.*/#\!\/usr\/bin\/env python/g" bin/$bin > dist/bin/$bin +done + +cp -a lib/python2.7 dist/lib/python2.7 +cp -a include/python2.7 dist/include/python2.7 +rm -r dist/lib/python2.7/test + +# libboost_system.dylib \ +# libtorrent-rasterbar.7.dylib \ +# libtorrent-rasterbar.dylib \ + +for lib in \ + libfreetype.6.dylib \ + libpng12.0.dylib \ + libjpeg.62.dylib \ + libz.1.dylib \ + libz.1.2.8.dylib \ +; do + cp -a lib/$lib dist/lib/$lib +done diff --git a/src/pull.sh b/src/pull.sh new file mode 100755 index 0000000..2665c04 --- /dev/null +++ b/src/pull.sh @@ -0,0 +1,50 @@ +#!/bin/bash +cd `dirname $0` +base=`pwd` + +git_repository() { + name=$1 + url=$2 + echo get $name from $url + test -e $name || git clone $url $name + cd $name + git pull + cd $base +} +svn_repository() { + name=$1 + url=$2 + echo get $name from $url + test -e $name || svn co $url $name + cd $name + svn update + cd $base +} +tarball() { + name=$1 + url=$2 + echo get $name from $url + test -e $name || ( curl $url > $name.tar.gz && tar xzf $name.tar.gz && rm $name.tar.gz ) +} + +file() { + name=$1 + url=$2 + echo get $name from $url + test -e $name || (curl -L $url > $name) +} + +tarball Python-2.7.6 http://python.org/ftp/python/2.7.6/Python-2.7.6.tgz +file ez_setup.py https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py + +file zlib-1.2.8.tar.gz http://zlib.net/zlib-1.2.8.tar.gz +file jpeg-6b.tar.gz http://optimate.dl.sourceforge.net/project/libjpeg/libjpeg/6b/jpegsrc.v6b.tar.gz +file libpng-1.2.51.tar.gz http://dfn.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.51.tar.gz +file freetype-2.5.0.tar.gz http://download.savannah.gnu.org/releases-redirect/freetype/freetype-2.5.0.tar.gz +file Imaging-1.1.7.tar.gz http://effbot.org/media/downloads/Imaging-1.1.7.tar.gz + +#file boost_1_53_0.tar.gz http://optimate.dl.sourceforge.net/project/boost/boost/1.53.0/boost_1_53_0.tar.gz + +#git_repository libtorrent https://code.google.com/p/libtorrent/ +#file libtorrent-rasterbar-0.16.12.tar.gz https://libtorrent.googlecode.com/files/libtorrent-rasterbar-0.16.12.tar.gz +