From: <har...@us...> - 2009-09-14 08:24:13
|
Revision: 4415 http://hugin.svn.sourceforge.net/hugin/?rev=4415&view=rev Author: harryvanderwolf Date: 2009-09-14 08:24:03 +0000 (Mon, 14 Sep 2009) Log Message: ----------- [OSX] add new script for libjpeg Version 7 Added Paths: ----------- hugin/trunk/mac/ExternalPrograms/scripts/libjpeg-7.sh Added: hugin/trunk/mac/ExternalPrograms/scripts/libjpeg-7.sh =================================================================== --- hugin/trunk/mac/ExternalPrograms/scripts/libjpeg-7.sh (rev 0) +++ hugin/trunk/mac/ExternalPrograms/scripts/libjpeg-7.sh 2009-09-14 08:24:03 UTC (rev 4415) @@ -0,0 +1,129 @@ +# ------------------ +# libjpeg +# ------------------ +# $Id: libjpeg.sh 1902 2007-02-04 22:27:47Z ippei $ +# Copyright (c) 2007, Ippei Ukai + + +# prepare + +# export REPOSITORYDIR="/PATH2HUGIN/mac/ExternalPrograms/repository" \ +# ARCHS="ppc i386" \ +# ppcTARGET="powerpc-apple-darwin7" \ +# ppcMACSDKDIR="/Developer/SDKs/MacOSX10.3.9.sdk" \ +# ppcONLYARG="-mcpu=G3 -mtune=G4 -mmacosx-version-min=10.3" \ +# i386TARGET="i386-apple-darwin8" \ +# i386MACSDKDIR="/Developer/SDKs/MacOSX10.4u.sdk" \ +# i386ONLYARG="-march=prescott -mtune=pentium-m -ftree-vectorize -mmacosx-version-min=10.4" \ +# OTHERARGs=""; + + +# init + +let NUMARCH="0" + +for i in $ARCHS +do + NUMARCH=$(($NUMARCH + 1)) +done + +mkdir -p "$REPOSITORYDIR/bin"; +mkdir -p "$REPOSITORYDIR/lib"; +mkdir -p "$REPOSITORYDIR/include"; + + +# compile + +# update some of libtool stuff +cp /usr/share/libtool/config* ./; + +for ARCH in $ARCHS +do + + mkdir -p "$REPOSITORYDIR/arch/$ARCH/bin"; + mkdir -p "$REPOSITORYDIR/arch/$ARCH/lib"; + mkdir -p "$REPOSITORYDIR/arch/$ARCH/include"; + + ARCHARGs="" + MACSDKDIR="" + + if [ $ARCH = "i386" -o $ARCH = "i686" ] + then + TARGET=$i386TARGET + MACSDKDIR=$i386MACSDKDIR + ARCHARGs="$i386ONLYARG" + export CC=$I386CC; + export CXX=$I386CXX; +elif [ $ARCH = "ppc" -o $ARCH = "ppc750" -o $ARCH = "ppc7400" ] + then + TARGET=$ppcTARGET + MACSDKDIR=$ppcMACSDKDIR + ARCHARGs="$ppcONLYARG" + export CC=$ppcCC; + export CXX=$ppcCXX; + elif [ $ARCH = "ppc64" -o $ARCH = "ppc970" ] + then + TARGET=$ppc64TARGET + MACSDKDIR=$ppc64MACSDKDIR + ARCHARGs="$ppc64ONLYARG" + export CC=$ppc64CC; + export CXX=$ppc64CXX; + elif [ $ARCH = "x86_64" ] + then + TARGET=$x64TARGET + MACSDKDIR=$x64MACSDKDIR + ARCHARGs="$x64ONLYARG" + export CC=$x64CC; + export CXX=$x64CXX; + fi + + env CFLAGS="-isysroot $MACSDKDIR -arch $ARCH $ARCHARGs $OTHERARGs -O2 -dead_strip" \ + CXXFLAGS="-isysroot $MACSDKDIR -arch $ARCH $ARCHARGs $OTHERARGs -O2 -dead_strip" \ + CPPFLAGS="-I$REPOSITORYDIR/include -I/usr/include" \ + LDFLAGS="-L$REPOSITORYDIR/lib -L/usr/lib -dead_strip" \ + NEXT_ROOT="$MACSDKDIR" \ + ./configure --prefix="$REPOSITORYDIR" --disable-dependency-tracking \ + --host="$TARGET" --exec-prefix=$REPOSITORYDIR/arch/$ARCH \ + --enable-shared --enable-static; + + make clean; + make install; + +done + + +# merge libjpeg + +for liba in lib/libjpeg.a lib/libjpeg.7.dylib +do + + if [ $NUMARCH -eq 1 ] + then + mv "$REPOSITORYDIR/arch/$ARCHS/$liba" "$REPOSITORYDIR/$liba"; + if [[ $liba == *.a ]] + then + ranlib "$REPOSITORYDIR/$liba"; + fi + continue + fi + + LIPOARGs="" + + for ARCH in $ARCHS + do + LIPOARGs="$LIPOARGs $REPOSITORYDIR/arch/$ARCH/$liba" + done + + lipo $LIPOARGs -create -output "$REPOSITORYDIR/$liba"; + if [[ $liba == *.a ]] + then + ranlib "$REPOSITORYDIR/$liba"; + fi + +done + + +if [ -f "$REPOSITORYDIR/lib/libjpeg.7.dylib" ] +then + ln -sfn "libjpeg.7.dylib" "$REPOSITORYDIR/lib/libjpeg.dylib"; +fi This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |