view Xcode/SDL/pkg-support/devel-resources/install.sh @ 2866:e532417a6977

Fixed SDL 1.2 compatibility problem. The API specifies that SDL_OpenAudio() will fill out the 'desired' audio spec with the correct samples and size set by the driver. This value is important since it may be used by applications that size audio buffers, etc. However, we want to allow advanced applications to call SDL_OpenAudioDevice() which gets passed a const 'desired' parameter, and have the correct data filled into the 'obtained' parameter, possibly allowing or not allowing format changes. So... 'obtained' becomes the audio format the user callback is expected to use, and we add flags to allow the application to specify which format changes are allowed. Note: We really need to add a way to query the 'obtained' audio spec.
author Sam Lantinga <slouken@libsdl.org>
date Sat, 13 Dec 2008 06:36:47 +0000 (2008-12-13)
parents d63e9f5944ae
children
line wrap: on
line source
#!/bin/sh
# finish up the installation
# this script should be executed using the sudo command
# this file is copied to SDL-devel.post_install and SDL-devel.post_upgrade
# inside the .pkg bundle
echo "Running post-install script"
umask 022

USER=`basename ~`
echo "User is \"$USER\""

ROOT=/Developer/Documentation/SDL
echo "Fixing framework permissions"
find $ROOT -type d -exec chmod a+rx {} \;
find $ROOT -type f -exec chmod a+r {} \;

## We're not installing frameworks here anymore. The single
## framework should be installed to /Library/Frameworks which 
## is handled by the standard package (not developer package).
## Using the home directory here is problematic for multi-user systems too.
# echo "Moving SDL.framework to ~/Library/Frameworks"
# move SDL to its proper home, so the target stationary works
#sudo -u $USER mkdir -p ~/Library/Frameworks
#sudo -u $USER /Developer/Tools/CpMac -r $ROOT/SDL.framework ~/Library/Frameworks

## I'm not sure where this gets created and what's put in there.
rm -rf $ROOT/SDL.framework

## I think precompiled headers have changed through the revisions of Apple's gcc.
## I don't know how useful this is anymore w.r.t. Apple's newest system for precompiled headers.
## I'm removing this for now.
# echo "Precompiling Header"
# precompile header for speedier compiles
#sudo -u $USER /usr/bin/cc -precomp ~/Library/Frameworks/SDL.framework/Headers/SDL.h -o ~/Library/Frameworks/SDL.framework/Headers/SDL.p

# find the directory to store stationary in
if [ -e "/Library/Application Support/Apple/Developer Tools" ] ; then
    echo "Installing project stationary for XCode"
    PBXDIR="/Library/Application Support/Apple/Developer Tools"
else
    echo "Installing project stationary for Project Builder"
    PBXDIR="/Developer/ProjectBuilder Extras"
fi

# move stationary to its proper home
mkdir -p "$PBXDIR/Project Templates/Application"
mkdir -p "$PBXDIR/Target Templates/SDL"

cp -r "$ROOT/Project Stationary/SDL Application"              "$PBXDIR/Project Templates/Application/"
cp -r "$ROOT/Project Stationary/SDL Cocoa Application"        "$PBXDIR/Project Templates/Application/"
cp -r "$ROOT/Project Stationary/SDL Custom Cocoa Application" "$PBXDIR/Project Templates/Application/"
cp -r "$ROOT/Project Stationary/SDL OpenGL Application"       "$PBXDIR/Project Templates/Application/"
cp "$ROOT/Project Stationary/Application.trgttmpl"            "$PBXDIR/Target Templates/SDL/"

rm -rf "$ROOT/Project Stationary"

# Actually, man doesn't check this directory by default, so this isn't
# very helpful anymore.
#echo "Installing Man Pages"
## remove old man pages
#rm -rf "/Developer/Documentation/ManPages/man3/SDL"*
#
## install man pages
#mkdir -p "/Developer/Documentation/ManPages/man3"
#cp "$ROOT/docs/man3/SDL"* "/Developer/Documentation/ManPages/man3/"
#rm -rf "$ROOT/docs/man3"
#
#echo "Rebuilding Apropos Database"
## rebuild apropos database
#/usr/libexec/makewhatis

# copy README file to your home directory
sudo -u $USER cp "$ROOT/Readme SDL Developer.txt" ~/

# open up the README file
sudo -u $USER open ~/"Readme SDL Developer.txt"