From 8a140c39942d380c3612b94b5ea84c11d1e4a2f8 Mon Sep 17 00:00:00 2001 From: "Hoa V. DINH" Date: Tue, 14 May 2013 23:42:12 -0700 Subject: Added build scripts for mailcore2 --- scripts/build-mailcore2-ios.sh | 87 ++++++++++++++++++++++++++++++++++++++++ scripts/build-mailcore2-macos.sh | 67 +++++++++++++++++++++++++++++++ scripts/get-prebuilt.sh | 2 +- 3 files changed, 155 insertions(+), 1 deletion(-) create mode 100755 scripts/build-mailcore2-ios.sh create mode 100755 scripts/build-mailcore2-macos.sh diff --git a/scripts/build-mailcore2-ios.sh b/scripts/build-mailcore2-ios.sh new file mode 100755 index 00000000..9e54dea6 --- /dev/null +++ b/scripts/build-mailcore2-ios.sh @@ -0,0 +1,87 @@ +#!/bin/sh + +sdkversion=6.1 +url="https://github.com/MailCore/mailcore2.git" + +pushd `dirname $0` > /dev/null +scriptpath=`pwd` +popd > /dev/null +builddir="$scriptpath/../Externals/builds" + +BUILD_TIMESTAMP=`date +'%Y%m%d%H%M%S'` +tempbuilddir="$builddir/workdir/$BUILD_TIMESTAMP" +mkdir -p "$tempbuilddir" +srcdir="$tempbuilddir/src" +logdir="$tempbuilddir/log" +resultdir="$builddir/builds" +tmpdir="$tempbuilddir/tmp" + +mkdir -p "$resultdir" +mkdir -p "$logdir" +mkdir -p "$tmpdir" +mkdir -p "$srcdir" + +pushd . >/dev/null +mkdir -p "$builddir/downloads" +cd "$builddir/downloads" +if test -d mailcore2 ; then + cd mailcore2 + git pull --rebase +else + git clone $url + cd mailcore2 +fi +version=`git rev-parse HEAD | cut -c1-10` + +cp -R "$builddir/downloads/mailcore2" "$srcdir/mailcore2" +echo copying deps + +mkdir -p "$srcdir/mailcore2/Externals" +cd "$scriptpath/../Externals" +for filename in * ; do + if test x$filename != xbuilds ; then + cp -R "$scriptpath/../Externals/$filename" "$srcdir/mailcore2/Externals" + fi +done + +echo building mailcore2 +cd "$srcdir/mailcore2/build-mac" +sdk="iphoneos$sdkversion" +archs="armv7 armv7s" +echo building $sdk +xcodebuild -project mailcore2.xcodeproj -sdk $sdk -target "static mailcore2 ios" -configuration Release SYMROOT="$tmpdir/bin" OBJROOT="$tmpdir/obj" ARCHS="$archs" +if test x$? != x0 ; then + echo failed + exit 1 +fi +sdk="iphonesimulator$sdkversion" +archs="i386" +echo building $sdk +xcodebuild -project mailcore2.xcodeproj -sdk $sdk -target "static mailcore2 ios" -configuration Release SYMROOT="$tmpdir/bin" OBJROOT="$tmpdir/obj" ARCHS="$archs" +if test x$? != x0 ; then + echo failed + exit 1 +fi +echo finished + +cd "$tmpdir/bin" +mkdir -p "mailcore2-ios-$version/mailcore2-ios" +mkdir -p "mailcore2-ios-$version/mailcore2-ios/lib" +mv Release-iphoneos/include "mailcore2-ios-$version/mailcore2-ios" +lipo -create Release-iphoneos/libMailCore-ios.a \ + Release-iphonesimulator/libMailCore-ios.a \ + -output "mailcore2-ios-$version/mailcore2-ios/lib/libMailCore-ios.a" +zip -qry "$resultdir/mailcore2-ios-$version.zip" "mailcore2-ios-$version" +rm -f "$resultdir/mailcore2-ios-latest.zip" +cd "$resultdir" +ln -s "mailcore2-ios-$version.zip" "mailcore2-ios-latest.zip" + +echo build of mailcore2-ios-$version done + +popd >/dev/null + +rm -rf ../Externals/tmp + +echo cleaning +rm -rf "$tempbuilddir" +echo "$tempbuilddir" diff --git a/scripts/build-mailcore2-macos.sh b/scripts/build-mailcore2-macos.sh new file mode 100755 index 00000000..63e0b6c0 --- /dev/null +++ b/scripts/build-mailcore2-macos.sh @@ -0,0 +1,67 @@ +#!/bin/sh + +url="https://github.com/MailCore/mailcore2.git" + +pushd `dirname $0` > /dev/null +scriptpath=`pwd` +popd > /dev/null +builddir="$scriptpath/../Externals/builds" + +BUILD_TIMESTAMP=`date +'%Y%m%d%H%M%S'` +tempbuilddir="$builddir/workdir/$BUILD_TIMESTAMP" +mkdir -p "$tempbuilddir" +srcdir="$tempbuilddir/src" +logdir="$tempbuilddir/log" +resultdir="$builddir/builds" +tmpdir="$tempbuilddir/tmp" + +mkdir -p "$resultdir" +mkdir -p "$logdir" +mkdir -p "$tmpdir" +mkdir -p "$srcdir" + +pushd . >/dev/null +mkdir -p "$builddir/downloads" +cd "$builddir/downloads" +if test -d mailcore2 ; then + cd mailcore2 + git pull --rebase +else + git clone $url + cd mailcore2 +fi +version=`git rev-parse HEAD | cut -c1-10` + +cp -R "$builddir/downloads/mailcore2" "$srcdir/mailcore2" +echo copying deps + +mkdir -p "$srcdir/mailcore2/Externals" +cd "$scriptpath/../Externals" +for filename in * ; do + if test x$filename != xbuilds ; then + cp -R "$scriptpath/../Externals/$filename" "$srcdir/mailcore2/Externals" + fi +done +echo building mailcore2 +cd "$srcdir/mailcore2/build-mac" +xcodebuild -project mailcore2.xcodeproj -target "mailcore osx" -configuration Release SYMROOT="$tmpdir/bin" OBJROOT="$tmpdir/obj" +if test x$? != x0 ; then + echo failed + exit 1 +fi +echo finished + +cd "$tmpdir/bin/Release" +zip -qry "$resultdir/mailcore2-$version.zip" MailCore.framework MailCore.framework.dSYM +cd "$resultdir" +ln -s "mailcore2-$version.zip" "mailcore2-latest.zip" + +echo build of mailcore2-$version done + +popd >/dev/null + +rm -rf ../Externals/tmp + +echo cleaning +rm -rf "$tempbuilddir" +echo "$tempbuilddir" diff --git a/scripts/get-prebuilt.sh b/scripts/get-prebuilt.sh index 4545e33c..fbef01b4 100755 --- a/scripts/get-prebuilt.sh +++ b/scripts/get-prebuilt.sh @@ -10,7 +10,7 @@ if test x$1 != xskipprebuilt ; then git pull --rebase cd .. else - git clone https://github.com/dinhviethoa/mailcore2-deps.git + git clone --depth=1 https://github.com/dinhviethoa/mailcore2-deps.git fi cp mailcore2-deps/*.zip ../builds/builds popd -- cgit v1.2.3