diff options
author | stuconnolly <stuart02@gmail.com> | 2012-09-24 05:47:53 +0000 |
---|---|---|
committer | stuconnolly <stuart02@gmail.com> | 2012-09-24 05:47:53 +0000 |
commit | 9fdd0153492ebdae259e0514d9028d3b6f261b81 (patch) | |
tree | ee3d919acfc491fc22e8b84a6dd79cac6e64799c | |
parent | f37e308174721f2b2a8cb704fad9eb810bf0e273 (diff) | |
download | sequelpro-9fdd0153492ebdae259e0514d9028d3b6f261b81.tar.gz sequelpro-9fdd0153492ebdae259e0514d9028d3b6f261b81.tar.bz2 sequelpro-9fdd0153492ebdae259e0514d9028d3b6f261b81.zip |
Update MySQL and PosgreSQL library build scripts to find the SDK path.
-rwxr-xr-x | Frameworks/PostgresKit/Scripts/build-libpq.sh | 24 | ||||
-rwxr-xr-x | Frameworks/SPMySQLFramework/build-mysql-client.sh | 32 |
2 files changed, 43 insertions, 13 deletions
diff --git a/Frameworks/PostgresKit/Scripts/build-libpq.sh b/Frameworks/PostgresKit/Scripts/build-libpq.sh index e94308e9..43e8a48e 100755 --- a/Frameworks/PostgresKit/Scripts/build-libpq.sh +++ b/Frameworks/PostgresKit/Scripts/build-libpq.sh @@ -42,15 +42,13 @@ QUIET='NO' CLEAN='NO' +# Configuration MIN_OS_X_VERSION='10.5' - -# C/C++ compiler flags -export CFLAGS="-isysroot /Developer3/SDKs/MacOSX${MIN_OS_X_VERSION}.sdk -arch ppc -arch i386 -arch x86_64 -O3 -fno-omit-frame-pointer -fno-exceptions -mmacosx-version-min=${MIN_OS_X_VERSION}" -export CXXFLAGS="-isysroot /Developer3/SDKs/MacOSX${MIN_OS_X_VERSION}.sdk -arch ppc -arch i386 -arch x86_64 -O3 -fno-omit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mmacosx-version-min=${MIN_OS_X_VERSION}" - -ESC=$(printf '\033') +ARCHITECTURES='-arch ppc -arch i386 -arch x86_64' CONFIGURE_OPTIONS='--enable-thread-safety --with-openssl' +COMMON_COMPILE_OPTIONS="-fno-omit-frame-pointer -fno-exceptions -mmacosx-version-min=${MIN_OS_X_VERSION}" +ESC=$(printf '\033') set -A INCLUDE_HEADERS 'src/interfaces/libpq/libpq-fe.h' 'src/include/postgres_ext.h' usage() @@ -104,6 +102,20 @@ else OUTPUT_PATH="$POSTGRESQL_SOURCE_DIR" fi +# Find the SDK path +SDK_PATH=$(xcodebuild -version -sdk 2>/dev/null | grep "^Path: [a-zA-Z0-9\/\.]*$" | awk -F' ' '{ print $2 }' | grep "$MIN_OS_X_VERSION") + +if [ "x${SDK_PATH}" == 'x' ] +then + echo "$ESC[1;31mNo SDK found matching OS X version ${MIN_OS_X_VERSION}.$ESC[0m" + echo "$ESC[1;31mExiting...$ESC[0m" + exit 1 +fi + +# C/C++ compiler flags +export CFLAGS="-O3 -isysroot ${SDK_PATH} ${ARCHITECTURES} ${COMMON_COMPILE_OPTIONS}" +export CXXFLAGS="-O3 -isysroot ${SDK_PATH} ${ARCHITECTURES} ${COMMON_COMPILE_OPTIONS} -felide-constructors -fno-rtti" + OUTPUT_PATH="${OUTPUT_PATH}/SPPostgreSQLFiles.build" cd "$POSTGRESQL_SOURCE_DIR" diff --git a/Frameworks/SPMySQLFramework/build-mysql-client.sh b/Frameworks/SPMySQLFramework/build-mysql-client.sh index bd3fa0db..6e7be914 100755 --- a/Frameworks/SPMySQLFramework/build-mysql-client.sh +++ b/Frameworks/SPMySQLFramework/build-mysql-client.sh @@ -43,15 +43,15 @@ QUIET='NO' DEBUG='NO' CLEAN='NO' -# C/C++ compiler flags -export CFLAGS='-isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386 -arch x86_64 -O3 -fno-omit-frame-pointer -fno-exceptions -mmacosx-version-min=10.5' -export CXXFLAGS='-isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386 -arch x86_64 -O3 -fno-omit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mmacosx-version-min=10.5' +# Configuration +MIN_OS_X_VERSION='10.5' +ARCHITECTURES='-arch ppc -arch i386 -arch x86_64' CONFIGURE_OPTIONS='-DBUILD_CONFIG=mysql_release -DENABLED_LOCAL_INFILE=1 -DWITH_SSL=bundled -DWITH_MYSQLD_LDFLAGS="-all-static --disable-shared"' OUTPUT_DIR='SPMySQLFiles.build' -set -A INCLUDE_HEADERS 'my_alloc.h' 'my_list.h' 'mysql_com.h' 'mysql_time.h' 'mysql_version.h' 'mysql.h' 'typelib.h' ESC=`printf '\033'` +set -A INCLUDE_HEADERS 'my_alloc.h' 'my_list.h' 'mysql_com.h' 'mysql_time.h' 'mysql_version.h' 'mysql.h' 'typelib.h' usage() { @@ -67,6 +67,7 @@ Where: -s -- Path to the MySQL source directory # Test for cmake cmake --version > /dev/null 2>&1 + if [ ! $? -eq 0 ] then echo "$ESC[1;31mIn addition to the standard OS X build tools, '$ESC[0;1mcmake$ESC[1;31m' is required to compile the MySQL source. $ESC[0;1mcmake$ESC[1;31m is found at $ESC[0mcmake.org$ESC[1;31m, and a binary distribution is available from $ESC[0mhttp://www.cmake.org/cmake/resources/software.mhtml$ESC[1;31m ." @@ -82,7 +83,6 @@ then exit 1 fi - while getopts ':s:qcd' OPTION do case "$OPTION" in @@ -106,6 +106,7 @@ if [ "x${DEBUG}" == 'xYES' ] then echo "cd ${MYSQL_SOURCE_DIR}" fi + cd "$MYSQL_SOURCE_DIR" # Perform a clean if requested @@ -116,10 +117,12 @@ then if [ "x${QUIET}" == 'xYES' ] then make clean > /dev/null + if [ -f 'CMakeCache.txt' ]; then rm 'CMakeCache.txt' > /dev/null; fi if [ -d "$OUTPUT_DIR" ]; then rm -rf "$OUTPUT_DIR" > /dev/null; fi else make clean + if [ -f 'CMakeCache.txt' ]; then rm 'CMakeCache.txt'; fi if [ -d "$OUTPUT_DIR" ]; then rm -rf "$OUTPUT_DIR" > /dev/null; fi fi @@ -143,6 +146,19 @@ then exit 0 fi +# Find the SDK path +SDK_PATH=$(xcodebuild -version -sdk 2>/dev/null | grep "^Path: [a-zA-Z0-9\/\.]*$" | awk -F' ' '{ print $2 }' | grep "$MIN_OS_X_VERSION") + +if [ "x${SDK_PATH}" == 'x' ] +then + echo "$ESC[1;31mNo SDK found matching OS X version ${MIN_OS_X_VERSION}.$ESC[0m" + echo "$ESC[1;31mExiting...$ESC[0m" + exit 1 +fi + +# C/C++ compiler flags +export CFLAGS="-isysroot ${SDK_PATH} ${ARCHITECTURES} -O3 -fno-omit-frame-pointer -fno-exceptions -mmacosx-version-min=${MIN_OS_X_VERSION}" +export CXXFLAGS="-isysroot ${SDK_PATH} ${ARCHITECTURES} -O3 -fno-omit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mmacosx-version-min=${MIN_OS_X_VERSION}" echo "$ESC[1mConfiguring MySQL source...$ESC[0m" @@ -200,6 +216,7 @@ then exit 1 fi fi + if [ ! -d "${OUTPUT_DIR}/lib" ] then mkdir "${OUTPUT_DIR}/lib" @@ -209,6 +226,7 @@ then exit 1 fi fi + if [ ! -d "${OUTPUT_DIR}/include" ] then mkdir "${OUTPUT_DIR}/include" @@ -221,6 +239,7 @@ fi # Copy the library cp 'libmysql/libmysqlclient.a' "${OUTPUT_DIR}/lib/" + if [ ! $? -eq 0 ] then echo "$ESC[1;31mCould not copy libmysqlclient.a to output directory! (${MYSQL_SOURCE_DIR}/${OUTPUT_DIR}/lib)$ESC[0m" @@ -236,8 +255,7 @@ do echo "$ESC[1;31mCould not copy ${eachheader} to output directory! (${MYSQL_SOURCE_DIR}/${OUTPUT_DIR}/include)$ESC[0m" exit 1 fi -done - +done echo "$ESC[1mBuilding MySQL client libraries successfully completed.$ESC[0m" echo "$ESC[1mSee ${MYSQL_SOURCE_DIR}/${OUTPUT_DIR}/ for the product.$ESC[0m" |