Skip to content

Commit

Permalink
Replace bootstrap script with Makefile and relocate products
Browse files Browse the repository at this point in the history
- I found the bootstrap script a bit too much to maintain so
  I've switched it to a simpler Makefile
- Build products from these external libraries are now all
  build under ./contrib/build so that they can all be easily
  removed without having to guess which files are and aren't
  needed. This also allows me to remove them from the .gitignore
  • Loading branch information
samiamwork committed Dec 19, 2011
1 parent 40edba2 commit 4748605
Show file tree
Hide file tree
Showing 7 changed files with 68 additions and 275 deletions.
9 changes: 0 additions & 9 deletions .gitignore
Expand Up @@ -3,12 +3,3 @@
*.perspectivev3
xcuserdata
build
contrib/i386
contrib/lib
contrib/x86_64
contrib/ppc
contrib/config.mak
contrib/src/ffmpeg-mt
contrib/src/libebml
contrib/src/libmatroska
contrib/src/*.tar.bz2
8 changes: 4 additions & 4 deletions Movist.xcodeproj/project.pbxproj
Expand Up @@ -1468,12 +1468,12 @@
GCC_PREPROCESSOR_DEFINITIONS = DEBUG;
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = "";
HEADER_SEARCH_PATHS = "$(SRCROOT)/contrib/$(arch)/include";
HEADER_SEARCH_PATHS = "$(SRCROOT)/contrib/build/include";
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/contrib/lib",
"$(SRCROOT)/contrib/build/lib",
);
OTHER_CFLAGS = "";
OTHER_LDFLAGS = (
Expand Down Expand Up @@ -1504,12 +1504,12 @@
GCC_PREPROCESSOR_DEFINITIONS = "";
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = "";
HEADER_SEARCH_PATHS = "$(SRCROOT)/contrib/$(arch)/include";
HEADER_SEARCH_PATHS = "$(SRCROOT)/contrib/build/include";
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/contrib/lib",
"$(SRCROOT)/contrib/build/lib",
);
OTHER_LDFLAGS = (
"$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk/usr/lib/libz.dylib",
Expand Down
28 changes: 5 additions & 23 deletions build_extlib.sh
@@ -1,37 +1,19 @@
#/bin/sh
set -o errexit

SRCROOT="$PWD"
export CONTRIB_PATH="$SRCROOT/contrib/"
export CONTRIB_SRC_PATH="$CONTRIB_PATH/src/"

if [ "$1" = "clean" ]; then
rm -rf $CONTRIB_PATH/build $CONTRIB_PATH/i386 $CONTRIB_PATH/ppc \
$CONTRIB_PATH/x86_64 \
$CONTRIB_PATH/lib
rm -rf $CONTRIB_PATH/build
exit 0
fi

# i386
BUILDDIR="$CONTRIB_PATH/build/i386"
cd "$CONTRIB_PATH" && sh bootstrap i686-apple-darwin8
mkdir -p "$BUILDDIR"
cd "$BUILDDIR" && make -f "${CONTRIB_SRC_PATH}Makefile"
if [[ $? -ne 0 ]]
then
exit 1
fi

# x86_64
BUILDDIR="$CONTRIB_PATH/build/x86_64"
cd "$CONTRIB_PATH" && sh bootstrap i686-apple-darwin10
mkdir -p "$BUILDDIR"
cd "$BUILDDIR" && make -f "${CONTRIB_SRC_PATH}Makefile"
if [[ $? -ne 0 ]]
then
exit 1
fi
# build libmatroska
make -C $CONTRIB_PATH -f Makefile.matroska

# libav
# build libav
cd "$CONTRIB_SRC_PATH" && sh build_ffmpeg_mt.sh

# universal
Expand Down
50 changes: 50 additions & 0 deletions contrib/Makefile.matroska
@@ -0,0 +1,50 @@
LIBEBML_VERSION:=1.0.0
LIBEBML:=libebml-$(LIBEBML_VERSION)
LIBEBML_ARCHIVE:=$(LIBEBML).tar.bz2
LIBEBML_URL:=http://dl.matroska.org/downloads/libebml/$(LIBEBML_ARCHIVE)
LIBMATROSKA_VERSION:=1.0.0
LIBMATROSKA:=libmatroska-$(LIBMATROSKA_VERSION)
LIBMATROSKA_ARCHIVE:=$(LIBMATROSKA).tar.bz2
LIBMATROSKA_URL:=http://dl.matroska.org/downloads/libmatroska/$(LIBMATROSKA_ARCHIVE)
CURL:=curl -L -O
PREFIX:=$(CURDIR)/build
ARCHS:=i386 x86_64
ARCH_FLAGS:=$(addprefix -arch ,$(ARCHS))

# To be exported
CXX=g++-4.2
CXXFLAGS=$(ARCH_FLAGS) -isystem $(PREFIX)/include
LDFLAGS=$(ARCH_FLAGS) -L$(PREFIX)/lib
export CXX
export CXXFLAGS
export LDFLAGS


all: build/lib/libmatroska.a

.PHONY: all clean

clean:
rm -rf "$(PREFIX)"

$(PREFIX):
mkdir -p $@

build/$(LIBEBML_ARCHIVE): $(PREFIX)
$(CURL) $(LIBEBML_URL)
mv $(LIBEBML_ARCHIVE) build

build/lib/libebml.a: build/$(LIBEBML_ARCHIVE)
tar -C build -xvf build/$(LIBEBML_ARCHIVE)
make -C build/$(LIBEBML)/make/linux prefix=$(PREFIX)
make -C build/$(LIBEBML)/make/linux install prefix=$(PREFIX)

build/$(LIBMATROSKA_ARCHIVE):
$(CURL) $(LIBMATROSKA_URL)
mv $(LIBMATROSKA_ARCHIVE) build

build/lib/libmatroska.a: build/lib/libebml.a build/$(LIBMATROSKA_ARCHIVE)
tar -C build -xvf build/$(LIBMATROSKA_ARCHIVE)
make -C build/$(LIBMATROSKA)/make/linux prefix=$(PREFIX)
make -C build/$(LIBMATROSKA)/make/linux install prefix=$(PREFIX)

233 changes: 0 additions & 233 deletions contrib/bootstrap

This file was deleted.

0 comments on commit 4748605

Please sign in to comment.