Commit 477c04bc authored by Pierre d'Herbemont's avatar Pierre d'Herbemont

macosx/framework: Factorize precompilation.

parent 902b4cd3
...@@ -438,7 +438,6 @@ libiconv-snowleopard: libiconv-snowleopard.tar.bz2 ...@@ -438,7 +438,6 @@ libiconv-snowleopard: libiconv-snowleopard.tar.bz2
ifdef HAVE_DARWIN_OS ifdef HAVE_DARWIN_OS
ifdef HAVE_DARWIN_10 ifdef HAVE_DARWIN_10
.iconv: libiconv-snowleopard .iconv: libiconv-snowleopard
(cd libiconv-snowleopard && sed -i.orig s:/usr/lib:$(PREFIX)/lib/: libiconv.la)
(cd libiconv-snowleopard && cp libiconv.* $(PREFIX)/lib/) (cd libiconv-snowleopard && cp libiconv.* $(PREFIX)/lib/)
touch $@ touch $@
else else
......
...@@ -9,16 +9,16 @@ if test "x$SYMROOT" = "x"; then ...@@ -9,16 +9,16 @@ if test "x$SYMROOT" = "x"; then
fi fi
if test "$ACTION" = "clean"; then if test "$ACTION" = "clean"; then
rm -Rf $SYMROOT/vlc_build_dir rm -Rf $VLC_BUILD_DIR
exit 0 exit 0
fi fi
# Contruct the vlc_build_dir # Contruct the vlc_build_dir
mkdir -p $SYMROOT/vlc_build_dir mkdir -p $VLC_BUILD_DIR
cd $SYMROOT/vlc_build_dir cd $VLC_BUILD_DIR
# Contruct the argument list # Contruct the argument list
echo "Building for $ARCHS with sdk=\"$SDKROOT\"" echo "Building for $ARCHS with sdk=\"$SDKROOT\" in $VLC_BUILD_DIR"
args="--disable-nls $args" args="--disable-nls $args"
...@@ -62,21 +62,20 @@ fi ...@@ -62,21 +62,20 @@ fi
# Debug Flags # Debug Flags
if test "$CONFIGURATION" = "Debug"; then if test "$CONFIGURATION" = "Debug"; then
args="--enable-debug $args" args="--enable-debug $args"
else
args="--enable-release $args"
fi fi
top_srcdir="$SRCROOT/../../.." top_srcdir="$VLC_SRC_DIR"
# 64 bits switches # 64 bits switches
for arch in $ARCHS; do for arch in $ARCHS; do
this_args="$args" this_args="$args"
# where to install # where to install
this_args="--prefix=$SYMROOT/vlc_build_dir/vlc_install_dir $this_args" this_args="--prefix=${VLC_BUILD_DIR}/$arch/vlc_install_dir $this_args"
input="$top_srcdir/configure" input="$top_srcdir/configure"
output="$arch/Makefile" output="$arch/Makefile"
echo `pwd`"/${output}"
if test -e ${output} && test ${output} -nt ${input}; then if test -e ${output} && test ${output} -nt ${input}; then
echo "No need to re-run configure for $arch" echo "No need to re-run configure for $arch"
continue; continue;
...@@ -90,7 +89,7 @@ for arch in $ARCHS; do ...@@ -90,7 +89,7 @@ for arch in $ARCHS; do
this_args="--build=x86_64-apple-darwin10 $this_args" this_args="--build=x86_64-apple-darwin10 $this_args"
fi fi
echo "Running[$arch] configure $args" echo "Running[$arch] configure $this_args"
CFLAGS="-arch $arch" CXXFLAGS="-arch $arch" CPPFLAGS="-arch $arch" OBJCFLAGS="-arch $arch" exec $top_srcdir/configure $this_args CFLAGS="-arch $arch" CXXFLAGS="-arch $arch" CPPFLAGS="-arch $arch" OBJCFLAGS="-arch $arch" $top_srcdir/configure $this_args
cd .. cd ..
done done
...@@ -94,6 +94,7 @@ vlc_install_object() { ...@@ -94,6 +94,7 @@ vlc_install_object() {
if ! test -e ${src_lib}; then if ! test -e ${src_lib}; then
return return
fi fi
if ((! test -e ${lib_dest}) || test ${src_lib} -nt ${lib_dest} ); then if ((! test -e ${lib_dest}) || test ${src_lib} -nt ${lib_dest} ); then
mkdir -p ${dest_dir} mkdir -p ${dest_dir}
...@@ -111,7 +112,6 @@ vlc_install_object() { ...@@ -111,7 +112,6 @@ vlc_install_object() {
if [ "${type}" = "lib" ]; then if [ "${type}" = "lib" ]; then
# Change the reference of libvlc.1 stored in the usr directory to libvlc.dylib in the framework's library directory # Change the reference of libvlc.1 stored in the usr directory to libvlc.dylib in the framework's library directory
install_name_tool -id "${install_name}/${lib_name}" ${lib_dest} > /dev/null install_name_tool -id "${install_name}/${lib_name}" ${lib_dest} > /dev/null
echo "ID=${install_name}/${lib_name}"
fi fi
if [ "${type}" != "data" ]; then if [ "${type}" != "data" ]; then
......
...@@ -464,7 +464,7 @@ ...@@ -464,7 +464,7 @@
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh; shellPath = /bin/sh;
shellScript = "for arch in $ARCHS; do\n\techo \"Make [$arch]\"\n\tcd $SYMROOT/vlc_build_dir/$arch\n\tmake\ndone"; shellScript = "for arch in $ARCHS; do\n\techo \"Make [$arch]\"\n\tcd $VLC_BUILD_DIR/$arch\n\tmake\ndone";
}; };
633754D310ED0D330072A0D9 /* install */ = { 633754D310ED0D330072A0D9 /* install */ = {
isa = PBXShellScriptBuildPhase; isa = PBXShellScriptBuildPhase;
...@@ -484,7 +484,7 @@ ...@@ -484,7 +484,7 @@
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh; shellPath = /bin/sh;
shellScript = "for arch in $ARCHS; do\n\tcd $SYMROOT/vlc_build_dir/$arch\n\tcd src\n\techo \"Installing [$arch] libvlc, libvlccore, vlc\"\n\tmake install --quiet > /dev/null\ndone"; shellScript = "for arch in $ARCHS; do\n\tcd $VLC_BUILD_DIR/$arch\n\tcd src\n\techo \"Installing [$arch] libvlc, libvlccore, vlc\"\n\tmake install --quiet > /dev/null\ndone";
}; };
633BD6E30D2ADF030012A314 /* make */ = { 633BD6E30D2ADF030012A314 /* make */ = {
isa = PBXShellScriptBuildPhase; isa = PBXShellScriptBuildPhase;
...@@ -605,10 +605,7 @@ ...@@ -605,10 +605,7 @@
); );
INFOPLIST_FILE = Resources/Info.plist; INFOPLIST_FILE = Resources/Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks"; INSTALL_PATH = "@loader_path/../Frameworks";
LD_FLAGS_LIBINTL = "-dylib_file @loader_path/../lib/vlc_libintl.dylib:$(VLC_FRAMEWORK)/lib/vlc_libintl.dylib"; LIBRARY_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/$(PRODUCT_NAME).$(WRAPPER_EXTENSION)/lib";
LD_FLAGS_LIBVLC = "-dylib_file @loader_path/lib/libvlc.dylib:$(VLC_FRAMEWORK)/lib/libvlc.dylib";
LD_FLAGS_LIBVLC_CONTROL = "-dylib_file @loader_path/lib/libvlc-control.dylib:$(VLC_FRAMEWORK)/lib/libvlc-control.dylib";
LIBRARY_SEARCH_PATHS = "$(VLC_FRAMEWORK)/lib";
OTHER_LDFLAGS = ( OTHER_LDFLAGS = (
"-lvlccore", "-lvlccore",
"-single_module", "-single_module",
...@@ -620,9 +617,6 @@ ...@@ -620,9 +617,6 @@
PRODUCT_NAME = VLCKit; PRODUCT_NAME = VLCKit;
SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES; SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
SDKROOT = macosx10.5; SDKROOT = macosx10.5;
VLC_BUILD_DIR = "$(SYMROOT)/vlc_build_dir";
VLC_FRAMEWORK = "$(TARGET_BUILD_DIR)/$(PROJECT_NAME).framework";
VLC_SRC_DIR = ../../..;
WRAPPER_EXTENSION = framework; WRAPPER_EXTENSION = framework;
}; };
name = Debug; name = Debug;
...@@ -645,10 +639,7 @@ ...@@ -645,10 +639,7 @@
); );
INFOPLIST_FILE = Resources/Info.plist; INFOPLIST_FILE = Resources/Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks"; INSTALL_PATH = "@loader_path/../Frameworks";
LD_FLAGS_LIBINTL = "-dylib_file @loader_path/../lib/vlc_libintl.dylib:$(VLC_FRAMEWORK)/lib/vlc_libintl.dylib"; LIBRARY_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/$(PRODUCT_NAME).$(WRAPPER_EXTENSION)/lib";
LD_FLAGS_LIBVLC = "-dylib_file @loader_path/lib/libvlc.dylib:$(VLC_FRAMEWORK)/lib/libvlc.dylib -dylib_file @loader_path/../lib/libvlc.dylib:$(VLC_FRAMEWORK)/lib/libvlc.dylib";
LD_FLAGS_LIBVLC_CONTROL = "-dylib_file @loader_path/lib/libvlc-control.dylib:$(VLC_FRAMEWORK)/lib/libvlc-control.dylib";
LIBRARY_SEARCH_PATHS = "$(VLC_FRAMEWORK)/lib";
OTHER_LDFLAGS = ( OTHER_LDFLAGS = (
"-lvlccore", "-lvlccore",
"-single_module", "-single_module",
...@@ -660,9 +651,6 @@ ...@@ -660,9 +651,6 @@
PRODUCT_NAME = VLCKit; PRODUCT_NAME = VLCKit;
SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES; SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
SDKROOT = macosx10.5; SDKROOT = macosx10.5;
VLC_BUILD_DIR = "$(SYMROOT)/vlc_build_dir";
VLC_FRAMEWORK = "$(TARGET_BUILD_DIR)/$(PROJECT_NAME).framework";
VLC_SRC_DIR = ../../..;
WRAPPER_EXTENSION = framework; WRAPPER_EXTENSION = framework;
}; };
name = Release; name = Release;
...@@ -682,6 +670,8 @@ ...@@ -682,6 +670,8 @@
ONLY_ACTIVE_ARCH = YES; ONLY_ACTIVE_ARCH = YES;
PREBINDING = NO; PREBINDING = NO;
SDKROOT = macosx10.5; SDKROOT = macosx10.5;
VLC_BUILD_DIR = "$(SYMROOT)/$(CONFIGURATION)/vlc_build_dir";
VLC_SRC_DIR = "$(SRCROOT)/../../..";
}; };
name = Debug; name = Debug;
}; };
...@@ -700,6 +690,8 @@ ...@@ -700,6 +690,8 @@
ONLY_ACTIVE_ARCH = NO; ONLY_ACTIVE_ARCH = NO;
PREBINDING = NO; PREBINDING = NO;
SDKROOT = macosx10.5; SDKROOT = macosx10.5;
VLC_BUILD_DIR = "$(SYMROOT)/$(CONFIGURATION)/vlc_build_dir";
VLC_SRC_DIR = "$(SRCROOT)/../../..";
}; };
name = Release; name = Release;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment