From 477c04bc7a1f11c185738ce9ef6e5e258cc4c405 Mon Sep 17 00:00:00 2001 From: Pierre d'Herbemont Date: Tue, 16 Feb 2010 12:46:57 +0100 Subject: [PATCH] macosx/framework: Factorize precompilation. --- extras/contrib/src/Makefile | 1 - projects/macosx/framework/Configure.sh | 19 +++++++-------- projects/macosx/framework/Pre-Compile.sh | 2 +- .../VLCKit.xcodeproj/project.pbxproj | 24 +++++++------------ 4 files changed, 18 insertions(+), 28 deletions(-) diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index a4bd26f609..f5d086b9ea 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -438,7 +438,6 @@ libiconv-snowleopard: libiconv-snowleopard.tar.bz2 ifdef HAVE_DARWIN_OS ifdef HAVE_DARWIN_10 .iconv: libiconv-snowleopard - (cd libiconv-snowleopard && sed -i.orig s:/usr/lib:$(PREFIX)/lib/: libiconv.la) (cd libiconv-snowleopard && cp libiconv.* $(PREFIX)/lib/) touch $@ else diff --git a/projects/macosx/framework/Configure.sh b/projects/macosx/framework/Configure.sh index 798ce6ddb8..ae6def771e 100644 --- a/projects/macosx/framework/Configure.sh +++ b/projects/macosx/framework/Configure.sh @@ -9,16 +9,16 @@ if test "x$SYMROOT" = "x"; then fi if test "$ACTION" = "clean"; then - rm -Rf $SYMROOT/vlc_build_dir + rm -Rf $VLC_BUILD_DIR exit 0 fi # Contruct the vlc_build_dir -mkdir -p $SYMROOT/vlc_build_dir -cd $SYMROOT/vlc_build_dir +mkdir -p $VLC_BUILD_DIR +cd $VLC_BUILD_DIR # 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" @@ -62,21 +62,20 @@ fi # Debug Flags if test "$CONFIGURATION" = "Debug"; then args="--enable-debug $args" -else - args="--enable-release $args" fi -top_srcdir="$SRCROOT/../../.." +top_srcdir="$VLC_SRC_DIR" # 64 bits switches for arch in $ARCHS; do this_args="$args" # 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" output="$arch/Makefile" + echo `pwd`"/${output}" if test -e ${output} && test ${output} -nt ${input}; then echo "No need to re-run configure for $arch" continue; @@ -90,7 +89,7 @@ for arch in $ARCHS; do this_args="--build=x86_64-apple-darwin10 $this_args" fi - echo "Running[$arch] configure $args" - CFLAGS="-arch $arch" CXXFLAGS="-arch $arch" CPPFLAGS="-arch $arch" OBJCFLAGS="-arch $arch" exec $top_srcdir/configure $this_args + echo "Running[$arch] configure $this_args" + CFLAGS="-arch $arch" CXXFLAGS="-arch $arch" CPPFLAGS="-arch $arch" OBJCFLAGS="-arch $arch" $top_srcdir/configure $this_args cd .. done diff --git a/projects/macosx/framework/Pre-Compile.sh b/projects/macosx/framework/Pre-Compile.sh index 833225d4d9..db3500fab5 100644 --- a/projects/macosx/framework/Pre-Compile.sh +++ b/projects/macosx/framework/Pre-Compile.sh @@ -94,6 +94,7 @@ vlc_install_object() { if ! test -e ${src_lib}; then return fi + if ((! test -e ${lib_dest}) || test ${src_lib} -nt ${lib_dest} ); then mkdir -p ${dest_dir} @@ -111,7 +112,6 @@ vlc_install_object() { if [ "${type}" = "lib" ]; then # 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 - echo "ID=${install_name}/${lib_name}" fi if [ "${type}" != "data" ]; then diff --git a/projects/macosx/framework/VLCKit.xcodeproj/project.pbxproj b/projects/macosx/framework/VLCKit.xcodeproj/project.pbxproj index 5f22a67c78..5de574d0a4 100644 --- a/projects/macosx/framework/VLCKit.xcodeproj/project.pbxproj +++ b/projects/macosx/framework/VLCKit.xcodeproj/project.pbxproj @@ -464,7 +464,7 @@ ); runOnlyForDeploymentPostprocessing = 0; 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 */ = { isa = PBXShellScriptBuildPhase; @@ -484,7 +484,7 @@ ); runOnlyForDeploymentPostprocessing = 0; 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 */ = { isa = PBXShellScriptBuildPhase; @@ -605,10 +605,7 @@ ); INFOPLIST_FILE = Resources/Info.plist; INSTALL_PATH = "@loader_path/../Frameworks"; - LD_FLAGS_LIBINTL = "-dylib_file @loader_path/../lib/vlc_libintl.dylib:$(VLC_FRAMEWORK)/lib/vlc_libintl.dylib"; - 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"; + LIBRARY_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/$(PRODUCT_NAME).$(WRAPPER_EXTENSION)/lib"; OTHER_LDFLAGS = ( "-lvlccore", "-single_module", @@ -620,9 +617,6 @@ PRODUCT_NAME = VLCKit; SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES; SDKROOT = macosx10.5; - VLC_BUILD_DIR = "$(SYMROOT)/vlc_build_dir"; - VLC_FRAMEWORK = "$(TARGET_BUILD_DIR)/$(PROJECT_NAME).framework"; - VLC_SRC_DIR = ../../..; WRAPPER_EXTENSION = framework; }; name = Debug; @@ -645,10 +639,7 @@ ); INFOPLIST_FILE = Resources/Info.plist; INSTALL_PATH = "@loader_path/../Frameworks"; - LD_FLAGS_LIBINTL = "-dylib_file @loader_path/../lib/vlc_libintl.dylib:$(VLC_FRAMEWORK)/lib/vlc_libintl.dylib"; - 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"; + LIBRARY_SEARCH_PATHS = "$(CONFIGURATION_BUILD_DIR)/$(PRODUCT_NAME).$(WRAPPER_EXTENSION)/lib"; OTHER_LDFLAGS = ( "-lvlccore", "-single_module", @@ -660,9 +651,6 @@ PRODUCT_NAME = VLCKit; SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES; SDKROOT = macosx10.5; - VLC_BUILD_DIR = "$(SYMROOT)/vlc_build_dir"; - VLC_FRAMEWORK = "$(TARGET_BUILD_DIR)/$(PROJECT_NAME).framework"; - VLC_SRC_DIR = ../../..; WRAPPER_EXTENSION = framework; }; name = Release; @@ -682,6 +670,8 @@ ONLY_ACTIVE_ARCH = YES; PREBINDING = NO; SDKROOT = macosx10.5; + VLC_BUILD_DIR = "$(SYMROOT)/$(CONFIGURATION)/vlc_build_dir"; + VLC_SRC_DIR = "$(SRCROOT)/../../.."; }; name = Debug; }; @@ -700,6 +690,8 @@ ONLY_ACTIVE_ARCH = NO; PREBINDING = NO; SDKROOT = macosx10.5; + VLC_BUILD_DIR = "$(SYMROOT)/$(CONFIGURATION)/vlc_build_dir"; + VLC_SRC_DIR = "$(SRCROOT)/../../.."; }; name = Release; }; -- 2.39.2