From: <har...@us...> - 2008-08-10 13:37:27
|
Revision: 3292 http://hugin.svn.sourceforge.net/hugin/?rev=3292&view=rev Author: harryvanderwolf Date: 2008-08-10 13:37:22 +0000 (Sun, 10 Aug 2008) Log Message: ----------- [Mac] Alpha Stage: scripts to make a Universal bundle. These scripts are not integrated in the cmake build, but the cmake build is integrated in the scripts. Added Paths: ----------- hugin/trunk/platforms/mac/scripted_universal_build/ hugin/trunk/platforms/mac/scripted_universal_build/00-Readme.txt hugin/trunk/platforms/mac/scripted_universal_build/01-Compile_hugin.sh hugin/trunk/platforms/mac/scripted_universal_build/02-Make_bundle.sh hugin/trunk/platforms/mac/scripted_universal_build/03-localise-bundle.sh hugin/trunk/platforms/mac/scripted_universal_build/04-create_dmg_tgz.sh hugin/trunk/platforms/mac/scripted_universal_build/archives/ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/Pasted Graphic 1.tiff hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/Pasted Graphic 2.tiff hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/TXT.rtf hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_JP hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_OSX.txt hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_WINDOWS hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Tools_included_with_the_Hugin_bundle.rtf hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/ hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/AUTHORS.hugin hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.hugin hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.libpano hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.matchpoint hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.panomatic hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/LICENCE.hugin hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/LICENCE_JHEAD.hugin hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/LICENCE_VIGRA.hugin hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/LICENSE.autopano-sift-c hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/LICENSE.panomatic hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/MANIFEST.ExifTool hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/VIGRA_LICENSE.enblend hugin/trunk/platforms/mac/scripted_universal_build/build/ hugin/trunk/platforms/mac/scripted_universal_build/bundle_constants.txt hugin/trunk/platforms/mac/scripted_universal_build/hugin_config.h hugin/trunk/platforms/mac/scripted_universal_build/hugin_config.h.2 Added: hugin/trunk/platforms/mac/scripted_universal_build/00-Readme.txt =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/00-Readme.txt (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/00-Readme.txt 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,49 @@ +BUILDING A UNIVERSAL HUGIN BUNDLE WITH SCRIPTS + +*** +This is in alpha stage. +*** + +INTRODUCTION +Until now the way to build a Universal Hugin bundle was to do it via Xcode. +Recently Ippei Ukai, the creator of the XCode project, upgraded to Leopard. +Leopard uses XCode 3.0, whereas Tiger uses 2.5 (or 2.4.1). Apple said that +as long as you did not use the extra functionality of 3.0, the XCode projects +are backwards compatible. This is not true however for the Hugin project. +That's why I built a scripted version. + +PREREQUISITES +1. You need to have XCode installed +2. You need to have cmake installed +3. You need to have subversion (SVN) installed +4. You need to have built the dependent libraries and binaries + with the scripts in the <hugin_trunk>/mac/ExternalPrograms directory. +5. You need to have a correct SetEnv-universal.txt available (which is a + prerequisite for 4 anyway) and you need to have a configured + bundle_constants.txt (in this directory). + +HOWTO BUILD A UNIVERSAL HUGIN BUNDLE +1. Build all libraries and binaries from <hugin_trunk>/mac/ExternalPrograms. + +2. Compile Hugin + cd into the hugin main source directory. From that directory you need to + run the script like ./platforms/mac/scripted_universal_build/01-Compile_hugin.sh + Wait till it's finished (and that will take quite some time). + +3. Build Universal portable bundle + Cd into the platforms/mac/scripted_universal_build directory and issue the + command: ./02-Make_bundle.sh + +4. Add localisation and help to the bundle. + From the platforms/mac/scripted_universal_build directory issue the + command: ./03-localise-bundle.sh + + After this step you have a fully portable Hugin bundle. + +5. Make archive for upload + From the platforms/mac/scripted_universal_build directory issue the + command: ./04-create_dmg_tgz.sh + +This will finish it up. Share you bundle with the community. + + \ No newline at end of file Added: hugin/trunk/platforms/mac/scripted_universal_build/01-Compile_hugin.sh =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/01-Compile_hugin.sh (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/01-Compile_hugin.sh 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,248 @@ +# -------------------- +# Hugin 0.7.0 +# -------------------- +# $Id: 01-compile_hugin.sh 1905 2007-02-05 00:11:26Z ippei $ +# script skeleton by Ippei Ukai +# cmake part Harry van der Wolf + +# prepare +source ./mac/ExternalPrograms/scripts/SetEnv-universal.txt; + +# export ="/PATH2HUGIN/mac/ExternalPrograms/repository" \ +# ARCHS="ppc i386" \ +# ppcTARGET="powerpc-apple-darwin8" \ +# i386TARGET="i386-apple-darwin8" \ +# ppcMACSDKDIR="/Developer/SDKs/MacOSX10.4u.sdk" \ +# i386MACSDKDIR="/Developer/SDKs/MacOSX10.4u.sdk" \ +# ppcONLYARG="-mcpu=G3 -mtune=G4" \ +# i386ONLYARG="-mfpmath=sse -msse2 -mtune=pentium-m -ftree-vectorize" \ +# ppc64ONLYARG="-mcpu=G5 -mtune=G5 -ftree-vectorize" \ +# 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"; + + +HUGINVER_FULL="0.0" + +# compile + +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" + elif [ $ARCH = "ppc" -o $ARCH = "ppc750" -o $ARCH = "ppc7400" ] + then + TARGET=$ppcTARGET + MACSDKDIR=$ppcMACSDKDIR + ARCHARGs="$ppcONLYARG" + elif [ $ARCH = "ppc64" -o $ARCH = "ppc970" ] + then + TARGET=$ppc64TARGET + MACSDKDIR=$ppc64MACSDKDIR + ARCHARGs="$ppc64ONLYARG" + elif [ $ARCH = "x86_64" ] + then + TARGET=$x64TARGET + MACSDKDIR=$x64MACSDKDIR + ARCHARGs="$x64ONLYARG" + fi + + mkdir -p $ARCH; + cd $ARCH; + rm CMakeCache.txt; + +# export PATH=$REPOSITORYDIR/bin:$PATH; + export CMAKE_INCLUDE_PATH="$CMAKE_INCLUDE_PATH:$REPOSITORYDIR/include/wx-2.8"; +# export INSTALL_OSX_BUNDLE_DIR="$REPOSITORYDIR/arch/$ARCH"; + export PKG_CONFIG_PATH="$REPOSITORYDIR/lib/pkgconfig"; + export MAC_SELF_CONTAINED_BUNDLE="$REPOSITORYDIR/arch/$ARCH"; + +cmake \ + -DCMAKE_BUILD_TYPE="Release" \ + -DCMAKE_INSTALL_PREFIX="$REPOSITORYDIR/arch/$ARCH" \ + -DCMAKE_OSX_ARCHITECTURES="$TARGET" \ + -DCMAKE_OSX_SYSROOT="$MACSDKDIR"\ + -DCMAKE_C_FLAGS="-arch $ARCH -O2 -dead_strip -I/usr/include -I$REPOSITORYDIR/include" \ + -DCMAKE_CXX_FLAGS="-arch $ARCH -O2 -dead_strip -I/usr/include -I$REPOSITORYDIR/include" \ + -DCMAKE_LDFLAGS="-L/usr/lib -L$REPOSITORYDIR/lib -dead_strip -prebind" \ + ..; + + + # patch hugin_config.h + cp "../platforms/mac/scripted_universal_build/hugin_config.h" "src/hugin_config.h" + + make; + make install; + + cd .. + +done + +# Correct install_names in Hugin and HuginStitchProject binaries +for ARCH in $ARCHS +do + echo "$ARCH" + bins="$REPOSITORYDIR/arch/$ARCH/Application/Hugin.app/Contents/MacOS/Hugin $REPOSITORYDIR/arch/$ARCH/Application/HuginStitchProject.app/Contents/MacOS/HuginStitchProject" + for exec_file in $bins + do + lib_path="`otool -L $exec_file 2>/dev/null | fgrep compatibility | cut -d\( -f1 | grep $ARCH`" + for lib in $lib_path + do + echo $lib + libbase="`echo $lib | sed -e 's/ (.*$//' -e 's/^.*\///'`" + echo " Changing install name for: $libbase" + install_name_tool -change "$lib" "$REPOSITORYDIR/lib/$libbase" $exec_file + done + done +done + + +# merge execs +echo "merge executables from Hugin" + +for program in bin/vig_optimize bin/tca_correct bin/pto2mk bin/nona bin/fulla bin/autooptimiser bin/align_image_stack bin/nona_gui bin/matchpoint bin/hugin_hdrmerge +do + + LIPOARGs="" + + for ARCH in $ARCHS + do + + LIPOARGs="$LIPOARGs $REPOSITORYDIR/arch/$ARCH/$program" + + if [ $NUMARCH -eq 1 ] + then + mv "$REPOSITORYDIR/arch/$ARCH/$program" "$REPOSITORYDIR/$program"; + strip "$REPOSITORYDIR/$program"; + break; + else + lipo $LIPOARGs -create -output "$REPOSITORYDIR/$program"; + strip "$REPOSITORYDIR/$program"; + fi + + done + +done + + +# merge libhugin*.dylibs +echo "Merging the libhugin*.dylibs" + +for liba in lib/libhuginANN.$HUGINVER_FULL.dylib lib/libhuginbase.$HUGINVER_FULL.dylib lib/libhuginjhead.$HUGINVER_FULL.dylib lib/libhuginvigraimpex.$HUGINVER_FULL.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/libhuginANN.$HUGINVER_FULL.dylib" ] +then + install_name_tool -id "$REPOSITORYDIR/lib/libhuginANN.$HUGINVER_FULL.dylib" "$REPOSITORYDIR/lib/libhuginANN.$HUGINVER_FULL.dylib" + ln -sfn libhuginANN.$HUGINVER_FULL.dylib $REPOSITORYDIR/lib/libhuginANN.dylib; +fi + +if [ -f "$REPOSITORYDIR/lib/libhuginbase.$HUGINVER_FULL.dylib" ] +then + install_name_tool -id "$REPOSITORYDIR/lib/libhuginbase.$HUGINVER_FULL.dylib" "$REPOSITORYDIR/lib/libhuginbase.$HUGINVER_FULL.dylib" + ln -sfn libhuginbase.$HUGINVER_FULL.dylib $REPOSITORYDIR/lib/libhuginbase.dylib; +fi + +if [ -f "$REPOSITORYDIR/lib/libhuginjhead.$HUGINVER_FULL.dylib" ] +then + install_name_tool -id "$REPOSITORYDIR/lib/libhuginjhead.$HUGINVER_FULL.dylib" "$REPOSITORYDIR/lib/libhuginjhead.$HUGINVER_FULL.dylib" + ln -sfn libhuginjhead.$HUGINVER_FULL.dylib $REPOSITORYDIR/lib/libhuginjhead.dylib; +fi + +if [ -f "$REPOSITORYDIR/lib/libhuginvigraimpex.$HUGINVER_FULL.dylib" ] +then + install_name_tool -id "$REPOSITORYDIR/lib/libhuginvigraimpex.$HUGINVER_FULL.dylib" "$REPOSITORYDIR/lib/libhuginvigraimpex.$HUGINVER_FULL.dylib" + ln -sfn libhuginvigraimpex.$HUGINVER_FULL.dylib $REPOSITORYDIR/lib/libhuginvigraimpex.dylib; +fi + + + +# merge minimal bundles to universal minimal bundle +# echo "merge minimal bundles to universal minimal bundles" + + + +for ARCH in $ARCHS +do + mkdir -p "$REPOSITORYDIR/Application" + rm -rf "$REPOSITORYDIR/Application/Hugin.app" + rm -rf "$REPOSITORYDIR/Application/HuginStichProject.app" + + cp -R "$REPOSITORYDIR/arch/$ARCH/Application/Hugin.app" "$REPOSITORYDIR/Application/" + cp -R "$REPOSITORYDIR/arch/$ARCH/Application/HuginStitchProject.app" "$REPOSITORYDIR/Application/" + break; +done + + +for program in Application/Hugin.app/Contents/MacOS/Hugin Application/HuginStitchProject.app/Contents/MacOS/HuginStitchProject +do + + if [ $NUMARCH -eq 1 ] + then + mv "$REPOSITORYDIR/arch/$ARCHS/$program" "$REPOSITORYDIR/$program"; + strip "$REPOSITORYDIR/$program"; + continue + fi + + LIPOARGs="" + + for ARCH in $ARCHS + do + LIPOARGs="$LIPOARGs $REPOSITORYDIR/arch/$ARCH/$program" + done + + lipo $LIPOARGs -create -output "$REPOSITORYDIR/$program"; + + strip "$REPOSITORYDIR/$program"; + +done Property changes on: hugin/trunk/platforms/mac/scripted_universal_build/01-Compile_hugin.sh ___________________________________________________________________ Added: svn:executable + * Added: hugin/trunk/platforms/mac/scripted_universal_build/02-Make_bundle.sh =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/02-Make_bundle.sh (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/02-Make_bundle.sh 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,117 @@ +# 02-Make_bundle.sh +# Harry van der Wolf, 2008 + +# Set correct environment +source ../../../mac/ExternalPrograms/scripts/SetEnv-universal.txt +source ./bundle_constants.txt + +# take care of build directory +mkdir -p build + +# Set some variables +H_app="build/Hugin.app" +H_binary="$H_app/Contents/MacOS/Hugin" +RES_dir="$H_app/Contents/Resources" +HSP_app="$RES_dir/HuginStitchProject.app" +HSP_binary="$HSP_app/Contents/MacOS/HuginStitchProject" +dylib_dir="$REPOSITORY_DIR/lib" +old_install_name_dirname="$REPOSITORY/lib" +dylib_install_loc="Libraries" +new_install_name_dirname="@executable_path/../$dylib_install_loc" + + +# Copy minimal bundles to build directory +echo "Copy minimal bundles to build directory" +rm -rf build/Hugin.app + +cp -R "$REPOSITORYDIR/Application/Hugin.app" "build" +cp -R "$REPOSITORYDIR/Application/HuginStitchProject.app" "$RES_dir" + + +# Copy binaries in relevant bundle +H_bins="autopano-sift-c autopano matchpoint panomatic" +HSP_bins="PTmasker PTroller PTblender PTmender enblend enfuse gnumake hugin_hdrmerge nona" + +for bins in $H_bins +do + echo "Copying $bins into bundle" + cp -Rf $REPOSITORYDIR/bin/$bins "$RES_dir" +done + +for bins in $HSP_bins +do + echo "Copying $bins into bundle" + cp -Rf $REPOSITORYDIR/bin/$bins "$HSP_app/Contents/MacOS" +done + + +# Copy necessary libraries into bundle +# Find out libs we need and loop until no changes. + +mkdir -p $H_app/Contents/$dylib_install_loc + +a=1 +nfiles=0 +endl=true +while $endl; do + echo "Looking for dependencies. Round " $a + libs="`otool -L $dylib_dir/* $RES_dir/* $H_binary $HSP_app/Contents/MacOS/* 2>/dev/null | fgrep compatibility | cut -d\( -f1 | grep $REPOSITORYDIR | sort | uniq`" + cp -f $libs $H_app/Contents/$dylib_install_loc + let "a+=1" + nnfiles=`ls $H_app/Contents/$dylib_install_loc | wc -l` + if [ $nnfiles = $nfiles ]; then + endl=false + else + nfiles=$nnfiles + fi +done +echo "finished copying necessary libs from $REPOSITORYDIR" + + + +# replace old install_name_dirname to new install_name_dirname +echo "replace old install_name_dirname to new install_name_dirname" +binaries="$H_app/Contents/$dylib_install_loc/*.dylib $RES_dir/* $H_binary $HSP_app/Contents/MacOS/*" + +for exec_file in $binaries +do + + echo "Processing: $exec_file" + + if [[ $exec_file = *.dylib ]] + then + for lib in $(otool -D $exec_file | grep $old_install_name_dirname | sed -e 's/ (.*$//' -e 's/^.*\///') + do + echo " Changing own install name." + install_name_tool -id "$new_install_name_dirname/$lib" $exec_file + done + fi + + for lib in $(otool -L $exec_file | grep $old_install_name_dirname | sed -e 's/ (.*$//' -e 's/^.*\///') + do + echo " Changing install name for: $lib" + install_name_tool -change "$old_install_name_dirname/$lib" "$new_install_name_dirname/$lib" $exec_file + done + +done + +# Copy "control point" scripts into bundle +H_scripts="autopano-complete-mac.sh matchpoint-complete-mac.sh" +for scripts in $H_scripts +do + echo "Copying $scripts into bundle" + cp -Rf "../../../mac/$scripts" "$RES_dir" +done + + +# Embed HuginStitchProject inside Hugin +rm -Rf "$HSP_app/Contents/$dylib_install_loc" +ln -s "../../../$dylib_install_loc" "$HSP_app/Contents/$dylib_install_loc" + +if (file "$HSP_app/Contents/Resources" | grep -q -v "symbolic link") +then + cp -r "$HSP_app/Contents/Resources"/* "$H_app/Contents/Resources/" +fi +rm -Rf "$HSP_app/Contents/Resources" +ln -s "../../../Resources" "$HSP_app/Contents/Resources" + Property changes on: hugin/trunk/platforms/mac/scripted_universal_build/02-Make_bundle.sh ___________________________________________________________________ Added: svn:executable + * Added: hugin/trunk/platforms/mac/scripted_universal_build/03-localise-bundle.sh =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/03-localise-bundle.sh (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/03-localise-bundle.sh 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,136 @@ +# 03-localise-bundle.sh +# Harry van der Wolf, 2008 +# This file is almost completely copied from Ippei Ukai's localisation scripts + +# Set correct environment +source ../../../mac/ExternalPrograms/scripts/SetEnv-universal.txt +source ./bundle_constants.txt + + +# Set some variables +H_app="build/Hugin.app" +wxWidgetsLocaleDir="$WX_LOCALE_DIR" +huginBuilder="$HUGIN_BUILDER" +resdir="$H_app/Contents/Resources" +huginsrcdir="../../../src/hugin1/hugin" +xrcsrcdir="$huginsrcdir/xrc" +translationsdir="../../../src/translations" + + + +####### +# First patch xrc + +rm -fR $resdir/xrc +echo copying xrc folder to $resdir/xrc +cp -R $xrcsrcdir $resdir/ +echo removing extra files from xrc folder +for DIR in $resdir/xrc "$resdir/xrc/??*" "$resdir/xrc/??*/??*" +do + rm -fR $DIR/.svn + rm -f $DIR/.??* + rm -fR $DIR/CVS + rm -f $DIR/Makefil* + rm -f $DIR/CMake* +done + +echo patching $resdir/xrc/cp_editor_panel.xrc to use wxChoice instead of wxNotebook +mv $resdir/xrc/cp_editor_panel.xrc $resdir/xrc/cp_editor_panel.xrc-bk +sed -e s/wxNotebook/wxChoice/ -e s/cp_editor_left_tab/cp_editor_left_choice/ -e s/cp_editor_right_tab/cp_editor_right_choice/ $resdir/xrc/cp_editor_panel.xrc-bk > $resdir/xrc/cp_editor_panel.xrc +rm $resdir/xrc/cp_editor_panel.xrc-bk + +echo patching $resdir/xrc/main_frame.xrc to have no border around the tab control. +mv $resdir/xrc/main_frame.xrc $resdir/xrc/main_frame.xrc-bk +sed -e s/wxALL// $resdir/xrc/main_frame.xrc-bk > $resdir/xrc/main_frame.xrc +rm $resdir/xrc/main_frame.xrc-bk + +#echo "generating about.htm from about.htm.in" +#sed -e "s/\${HUGIN_PACKAGE_VERSION}/$huginVer/g" \ +# -e "s/\${HUGIN_BUILDER}/$huginBuilder/g" \ +# $resdir/xrc/data/about.htm.in > $resdir/xrc/data/about.htm +#rm $resdir/xrc/data/about.htm.in + +cp $REPOSITORYDIR/share/hugin/xrc/data/about.htm $resdir/xrc/data/about.htm + + +######## +# Add localisation +for lang in "en" $(ls $translationsdir/*.po | sed -e "s/^.*\///g" -e "s/\.po//g") +do + + echo + echo "Language: $lang" + + localisedresdir="$resdir/$lang.lproj" + localedir="$localisedresdir/locale" + + rm -fR $localisedresdir + echo "deleting $localisedresdir" + + mkdir "$localisedresdir" + echo "making $localisedresdir" + mkdir "$localedir" + echo "making $localedir" + + if [ $lang = "en" ] + then + continue + fi + + echo "$lang/hugin.mo from $lang.po" + msgfmt -v -o "$localedir/hugin.mo" "$translationsdir/$lang.po" + + echo "$lang/wxstd.mo from $wxWidgetsLocaleDir/$lang.po" + if [ -f "$wxWidgetsLocaleDir/$lang.po" ] + then + msgfmt -v -o "$localedir/wxstd.mo" "$wxWidgetsLocaleDir/$lang.po" + else + echo "$lang.po not found;" + parentLang=`echo $lang|sed s/_.*//` + echo "$lang/wxstd.mo from $wxWidgetsLocaleDir/$parentLang.po" + if [ -f "$wxWidgetsLocaleDir/$parentLang.po" ] + then + msgfmt -v -o "$localedir/wxstd.mo" "$wxWidgetsLocaleDir/$parentLang.po" + else + echo "$parentLang.po not found;" + fi + fi + + for file in `ls $xrcsrcdir/data | grep _$lang.htm` + do + echo copying $file to $localisedresdir/`echo $file|sed s/_$lang//` + echo rewriting \'src=\"\' to \'src=\"../xrc/data/\' + sed s/src\=\"/src\=\"..\\/xrc\\/data\\// "$xrcsrcdir/data/$file" > $localisedresdir/`echo $file|sed s/_$lang//` + done + + for file in `ls $xrcsrcdir/data | grep _$lang.html` + do + echo copying $file to $localisedresdir/`echo $file|sed s/_$lang//` + echo rewriting \'src=\"\' to \'src=\"../xrc/data/\' + sed s/src\=\"/src\=\"..\\/xrc\\/data\\// "$xrcsrcdir/data/$file" > $localisedresdir/`echo $file|sed s/_$lang//` + done + + +done + +######## +# Install and "correct" help files +for helplang in "en_EN fr_FR" +do + + localisedresdir="$resdir/$(echo en_EN | grep -o '^[^_]*').lproj" + + if [ -d "$xrcsrcdir/data/help_$helplang" ] + then + echo "moving help_$helplang to $localisedresdir/help" + cp -R "$resdir/xrc/data/help_$helplang" "$localisedresdir/help" + for file in `ls $localisedresdir/help | grep .html` + do + echo rewriting \'src=\"../help_common\' to \'src=\"../../xrc/data/help_common\' + sed s/src\=\"..\\/help_common/src\=\"..\\/..\\/xrc\\/data\\/help_common/ "$localisedresdir/help/$file" > $localisedresdir/help/$file-copy + mv $localisedresdir/help/$file-copy $localisedresdir/help/$file + done + fi + +done + Property changes on: hugin/trunk/platforms/mac/scripted_universal_build/03-localise-bundle.sh ___________________________________________________________________ Added: svn:executable + * Added: hugin/trunk/platforms/mac/scripted_universal_build/04-create_dmg_tgz.sh =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/04-create_dmg_tgz.sh (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/04-create_dmg_tgz.sh 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,3 @@ +# Make an image +#/usr/bin/hdiutil create -srcfolder "$pkg.app" "$pkg.dmg" +# ./osx-dmg.sh Property changes on: hugin/trunk/platforms/mac/scripted_universal_build/04-create_dmg_tgz.sh ___________________________________________________________________ Added: svn:executable + * Property changes on: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/Pasted Graphic 1.tiff ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Property changes on: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/Pasted Graphic 2.tiff ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/TXT.rtf =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/TXT.rtf (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Control_Point_Generators.rtfd/TXT.rtf 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,77 @@ +{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;\f2\fnil\fcharset77 LucidaGrande; +} +{\colortbl;\red255\green255\blue255;} +\paperw11900\paperh16840\margl1440\margr1440\vieww17980\viewh13700\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc\pardirnatural + +\f0\b\fs38 \cf0 Control Point Generators +\f1\b0\fs24 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 \ +\ +Currently a couple of Control Point Generators are included with the bundle. Every "generator" needs to be set separately and needs different options set.\ +All generators are controlled from the "Hugin -> Preferences" popup. And then on the "Autopano" tab (See below).\ +You always need to set the "Use alternative Autopano" checkbox.\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 {{\NeXTGraphic Pasted Graphic 1.tiff \width14540 \height4880 +}\xAC}\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 \ +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural +\cf0 \ +Some of the default options are mentioned below.\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 {{\NeXTGraphic Pasted Graphic 2.tiff \width8760 \height2560 +}\xAC}\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 \ +Note: The +\f0\b %o +\f1\b0 and +\f0\b %i +\f1\b0 options are obligatory. Another useful one is +\f0\b %p +\f1\b0 which defines the number of control points to be used per overlap and which you can define in the "Images" tab of Hugin. \ +Note 2: Some of the options like +\f0\b %p +\f1\b0 and +\f0\b %o +\f1\b0 need another setting positioned in front of the real option. This can be different per generator.\ +\ +For a detailed overview of the available generators take a look at Yuval Levy's excellent website http://panospace.wordpress.com/ and to be more specific at his article discussing the several generators http://panospace.wordpress.com/2008/04/20/cp-gen/.\ +\ + \ +\ +\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural + +\f0\b \cf0 Autopano-SIFT-C +\f1\b0 \ +\ +Default preferences settings: --maxmatches %p %o %i\ +\ +other options:\ +--maxdim (default 1600)\ +--ransac <on|off|1|0> \ +but also : +\f2\fs26 --maxmatches %p --maxdim 800 --ransac 1 %o %i +\f1\fs24 \ +\ + +\f0\b Matchpoint +\f1\b0 \ +\ +Default preferences settings: -p %p \'d0o %o %i\ +\ +\ + +\f0\b Pan-o-matic +\f1\b0 \ +Default preferences settings: -o %o %i\ +\ +A few interesting options for those who may want to try:\ +\ + * --n<number> sets the of cores to use (default: autodetect)\ + *---fullscale use full scale images to detect keypoints\ +\ +} \ No newline at end of file Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,43 @@ +Goal: Toolchain to create panoramic images for every occasion, + from quick holiday snaps to images with hundreds of megapixels. + +This package contains the following programs: + + - hugin, The main program, a GUI for the panorama tools suite + and some programs included here. + + - nona, a simple replacement for PTStitcher (doesn't support most + features of PTStitcher, but is faster, opensource and + will be extended in the future). + + - nona_gui, nona with a graphical progress bar. + + - autooptimiser, optimise a panorama pairwise, starting from an + anchor image. cmd line version of the pairwise mode in hugin + +These programs are build on top of the panorama tools library, +http://panotools.sf.net + +The following external programs are highly recommended: + +1. enblend +2. autopano or autopano-sift + +hugin can be used to stitch multiple images together. The resulting image can +span 360 degrees. Another common use is the creation of very high resolution +pictures by combining multiple images. + +See http://hugin.sf.net for more information an tutorials. + +typical use: + +1. load images +2. specify initial parameters (lens etc) +3. select control points points. +4. run optimizer to estimate image positions +5. set output parameters and stich images together. + + +Please use the ptx mailing list if you have questions or suggestions: +p...@em... (or http://www.email-lists.org/mailman/listinfo/ptx) + Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_JP =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_JP (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_JP 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,71 @@ +This Japanese document is encoded with Shift-JIS. +------------------------------------------------- + + +Readme\x83t\x83@\x83C\x83\x8B - \x93\xFA\x96{\x8C\xEA + +hugin - Panorama Tools GUI +http://hugin.sourceforge.net/ + + + +hugin \x82ɂ\xA2\x82\xC4 + +hugin \x82̓p\x83m\x83\x89\x83}\x8Eʐ^\x82\x94\x82̎ʐ^\x82\xA9\x82\xE7\x8D\xEC\x82\xE9\x83\\x83t\x83g\x82ł\xB7\x81B\x8B\x9B\x8A\x83\x93\x83Y\x82Ȃǃv\x83\x8D\x83t\x83F\x83b\x83V\x83\x87\x83i\x83\x8B\x82ȋ@\x8A\xED\x82ւ̑Ή\x9E\x82\xE0\x8F[\x8E\xC0\x82\xB5\x82Ă\xA2\x82܂\xB7\x82\xAA\x81A\x95\x81\x92ʂ̃f\x83W\x83J\x83\x81\x82ŎB\x82\xC1\x82\xBD\x8Eʐ^\x82ł\xE0\x91S\x91R\x95\xBD\x8BC\x82ł\xB7\x81B + + + +\x83\x89\x83C\x83Z\x83\x93\x83X + +hugin \x82̓I\x81[\x83v\x83\x93\x83\\x81[\x83X\x81E\x83\\x83t\x83g\x83E\x83F\x83A\x82ł\xB7\x81BGNU General Public Lisence\x82̂\xE0\x82Ƃɖ\xB3\x97\xBF\x82Œ\xB3\x82\xEA\x82Ă\xA2\x82܂\xB7\x81B + + + +\x83C\x83\x93\x83X\x83g\x81[\x83\x8B + +hugin \x82\xCD Microsoft Windows\x81AMac OS X\x81A\x8Ae\x8E\xEDLinux\x81EBSD\x82ɑΉ\x9E\x82\xB5\x82Ă\xA2\x82܂\xB7\x81B\x94z\x95z\x8C`\x91Ԃ\xE2\x83C\x83\x93\x83X\x83g\x81[\x83\x8B\x95\xFB\x96@\x82͂\xBB\x82ꂼ\x82\xEA\x82̃V\x83X\x83e\x83\x80\x82ň\xEA\x94ʓI\x82ȕ\xFB\x96@\x82ɍ\x87\x82킹\x82Ă\xA2\x82܂\xB7\x81B + +Windows: \x83C\x83\x93\x83X\x83g\x81[\x83\x89 +Mac: \x83h\x83\x89\x83b\x83O\x81\x95\x83h\x83\x8D\x83b\x83v +Unix-like: \x83\\x81[\x83X\x81iconfigure\x81Amake\x81j + + + +\x92\xA3\x82荇\x82킹\x82̎菇 + +1. \x89摜\x82\xF0\x83v\x83\x8D\x83W\x83F\x83N\x83g\x82ɓǂݍ\x9E\x82\xDE +2. \x83\x8C\x83\x93\x83Y\x82̎\x8B\x96\xEC\x8Ap\x82Ȃǂ\xF0\x90ݒ\xE8 +3. \x83R\x83\x93\x83g\x83\x8D\x81[\x83\x8B\x83|\x83C\x83\x93\x83g\x82\xF0\x8Ew\x92\xE8 +4. \x8Fo\x97͉摜\x82̒\x86\x90S\x82ƂȂ\xE9\x81A\x88ʒu\x82̊\x82ɂ\xB7\x82\xE9\x83|\x83C\x83\x93\x83g\x82̐ݒ\xE8 +5. \x8DœK\x89\xBB\x82\xF0\x8E\xC0\x8Ds\x81A\x88\xEA\x82ЂƂ̉摜\x82\xF0\x8DœK\x82Ȉʒu\x82\xC9 +6. \x8Cq\x82\xAC\x8D\x87\x82킹\x82\xE9 +\x83E\x83F\x83u\x82≺\x8BL\x82ɂ\xA0\x82\xE9\x83`\x83\x85\x81[\x83g\x83\x8A\x83A\x83\x8B\x82\xF0\x8EQ\x8Dl\x82ɂ\xB5\x82Ă\xAD\x82\xBE\x82\xB3\x82\xA2\x81B + + + +\x93\xFA\x96{\x8C\xEA\x82̏\xEE\x95\xF1\x8C\xB9 + +- \x83\x86\x81[\x83U\x82̏\x91\x82\xA2\x82\xBD\x83`\x83\x85\x81[\x83g\x83\x8A\x83A\x83\x8B +http://www.planewave.org/translations/hugin/create-panorama.html +http://www.xucker.jpn.org/pc/makepanorama.html +http://www.geocities.jp/aerohawk_7/hugin.html +\x82Ȃ\xC7 + +- \x83\x86\x81[\x83U\x82̃u\x83\x8D\x83O +http://tbp.jp/tbp_6182.html +http://technorati.jp/tag/hugin +\x82Ȃ\xC7 + + + +\x82\xBB\x82̑\xBC + +- mixi.jp \x93\xE0\x82́uhugin\x81v\x83R\x83~\x83\x85\x83j\x83e\x83B\x82́A\x82\xA8\x82\xBB\x82炭\x93\xFA\x96{\x8C\xEA\x82ŗB\x88\xEA\x82\xCChugin\x83\x86\x81[\x83U\x81[\x82̃R\x83~\x83\x85\x83j\x83e\x83B\x82ł\xB7\x81B\x8F\x89\x90S\x8EҊ\xBD\x8C}\x82Ȃ̂\xC5mixi\x82\xF0\x82\xB2\x97\x98\x97p\x82̕\xFB\x82͂ǂ\xA4\x82\xBC\x82\xB2\x8EQ\x89\xC1\x89\xBA\x82\xB3\x82\xA2\x81B +http://mixi.jp/view_community.pl?id=898110 + +- \x93\xFA\x96{\x8C\xEA\x91Ή\x9E\x82͉L\x8E\x94\x88ꕽ(ipp...@ma...)\x82\xAA\x8F\xE3\x8BL\x83R\x83~\x83\x85\x83j\x83e\x83B\x82̕\xFB\x81X\x82Ƌ\xA6\x97͂\xB5\x82Đi\x82߂Ă\xA2\x82܂\xB7\x81B\x83w\x83\x8B\x83v\x82̓\xFA\x96{\x8C\xEA\x96\xF3\x82\xE2\x93\xFA\x96{\x8C\xEA\x82̃`\x83\x85\x81[\x83g\x83\x8A\x83A\x83\x8B\x82ȂǁA\x82ǂ\xF1\x82Ȍ`\x82ł\xE0\x82\xB2\x8B\xA6\x97͒\xB8\x82\xAF\x82\xEA\x82K\x82\xA2\x82ł\xB7\x81B + + + +Ippei UKAI, Copyleft 2006 +Last Modified: $Id: README_JP 1730 2006-08-18 20:18:47Z ippei $ \ No newline at end of file Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_OSX.txt =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_OSX.txt (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_OSX.txt 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,11 @@ +This is an experimental Hugin 0.7 SVN build for MacOSX. + +Please use the latest stable version available from http://hugin.sf.net/ for any deployment. The feedback should be sent to the hugin mailing-list (http://groups.google.com/group/hugin-ptx). + + +This build is based on Ippei Ukai's work for MacOSX. +Please read the HOWTO-autopanosift.rtf in the autopano-sift folder carefully!!! + + +Harry + Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_WINDOWS =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_WINDOWS (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/README_WINDOWS 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,44 @@ + + +This package contains the following programs: + + - hugin, The main program, a GUI for the panorama tools suite + and some programs included here. + + - nona, a simple replacement for PTStitcher (doesn't support most + features of PTStitcher, but faster, opensource and + will be extended in the future). + + - nona_gui, nona with a graphical progress bar. + + - autooptimiser, optimise a panorama pairwise, starting from an + anchor image. cmd line version of the pairwise mode in hugin + + - panoglviewer, a fast OpenGL accelerated viewer for spherical + panoramas. + +These programs are build on top of the panorama tools library, +http://panotools.sf.net + +The following external programs are highly recommended: + +1. autopano or autopano-sift + +hugin can be used to stitch multiple images together. The resulting image can +span 360 degrees. Another common use is the creation of very high resolution +pictures by combining multiple images. + +See http://hugin.sf.net for more information an tutorials. + +typical use: + +1. load images +2. specify initial parameters (lens etc) +3. select control points points. +4. run optimizer to estimate image positions +5. set output parameters and stich images together. + + +Please use the ptx mailing list if you have questions or suggestions: +p...@em... (or http://www.email-lists.org/mailman/listinfo/ptx) + Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Tools_included_with_the_Hugin_bundle.rtf =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Tools_included_with_the_Hugin_bundle.rtf (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Docs/Tools_included_with_the_Hugin_bundle.rtf 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,38 @@ +{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf470 +{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\paperw11900\paperh16840\margl1440\margr1440\vieww13640\viewh10940\viewkind0 +\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural + +\f0\b\fs36 \cf0 Tools included with the Hugin bundle +\fs28 .\ + +\f1\b0\fs24 \ +\ + +\f0\b Tools belonging to Hugin (internal tools) +\f1\b0 \ +Hugin (binary)\ +HuginStitchProject (binary)\ +hugin_hdrmerge (binary)\ +nona (binary)\ +\ + +\f0\b External tools included in the bundle +\f1\b0 \ +autopano-sift-c (binary)\ +Exiftool (perl)\ +enblend (binary)\ +enfuse (binary)\ +panomatic (binary)\ +matchpoint-complete-mac.sh (shell script)\ + - matchpoint (binary)\ + - autopano (binary)\ +PTblender (binary)\ +PTmasker (binary)\ +PTmender (binary)\ +PTroller (binary)\ +gnumake (binary)\ +\ +\ +} \ No newline at end of file Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/AUTHORS.hugin =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/AUTHORS.hugin (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/AUTHORS.hugin 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,63 @@ +Main author: + Pablo d'Angelo <pab...@we...> +Authors: + Kai-Uwe Behrmann <ku...@gm...> gui, panoviewer adds + Douglas Wilkins packaging, translation + bugfixes + Ed Halley gui, documentation + Ippei Ukai MacOSX port + Bruno Postle packaging, website, + documentation + Alexandre Jenny SpaceTransform class + Ziv Yaniv RanSaC code + John Navas MSI installer + Luca Vascon splash screen, icons + +Panoglview was written by Fabian Wetzel + +This source package also contains the following +(slightly modified) libraries. The improvements have been contributed +back to the upstream developers, if possible + +VIGRA: http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/ +jhead: http://www.sentex.net/~mwandel/jhead/ +levmar: http://www.ics.forth.gr/~lourakis/levmar/ by Manolis Lourakis +ANN: http://www.cs.umd.edu/~mount/ANN/ by David M. Mount and Sunil Arya + + +Translators + Marek Januszewski <sp...@we...> Polish + Jean-Luc Coulon French + Lorenz Trischberger, Pablo d'Angelo German + Luca Vascon Italian + Alexandre Prokoudine Russian + Ademar de Souza Reis Brazilian + Harry von der Wolf Dutch + Simon Oosthoek Dutch + Lu Fang Simplified Chinese + György Balló Hungarian + Albert Capellades Badia Catalan + Jiri Slaby Czech + Serhij Dubyk Ukrainian + Ulf Wilhelmson Swedish + Jozef Riha Slovak + Jorge González González Spanish + Milo Casagrande Italian + +The camera response estimation uses the EMoR response model developed +at the Computer Vision Laboratory of the Columbia University. +"Modeling the Space of Camera Response Functions," +M.D. Grossberg and S.K. Nayar, +IEEE Transactions on Pattern Analysis and Machine Intelligence, +Vol.26, No.10, pp.1272-1282, Oct, 2004. + +Thanks to the following people: + + The whole PTX mailing list, for great feedback and interesting + discussions. + + The libpano developers, Helmut Dersch, Rik Littlefield, Jim Watters, + Fulvio Seniore, Max Lyons and Bruno Postle + + Nils Lagerkvist for suggesting the program name, hugin + Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.hugin =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.hugin (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.hugin 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + <signature of Ty Coon>, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. Added: hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.libpano =================================================================== --- hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.libpano (rev 0) +++ hugin/trunk/platforms/mac/scripted_universal_build/archives/Licenses/COPYING.libpano 2008-08-10 13:37:22 UTC (rev 3292) @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source co... [truncated message content] |