]> granicus.if.org Git - handbrake/commitdiff
BuildSystem: darwin + Xcode dependencies and enhancements
authorkonablend <kona8lend@gmail.com>
Wed, 11 Mar 2009 05:18:47 +0000 (05:18 +0000)
committerkonablend <kona8lend@gmail.com>
Wed, 11 Mar 2009 05:18:47 +0000 (05:18 +0000)
This changeset focuses on a disconnect between Xcode targets HandBrakeCLI and HandBrake.app when
changest to external dependencies are made. The use case is to touch any .c file in libhb
which then builds .o and re-creates libhb.a; next the Xcode targets should at least re-link.
This did not happen because link-flags are used to add libhb.a and contrib libraries in Xcode;
which effectively hides them from Xcode.

The solution removes libhb.a from link-flags mechanism and places libhb.a as a framework library
known to Xcode; and the expected re-linking occurs. contrib libraries will continue to use link-flags
but since libhb.a has coarse-grained dependencies on contrib modules this will also cause Xcode
targets to re-link.

Further enhancements made to Xcode project:
- Xcode now scans any .c files for .h file dependencies; will help with Xcode sources;
  the effect against libhb.a is moot; libhb.a will be rebuilt by external system anyways.
- libbz2 and libz are now treated as framework libraries; it's more correct than listing
  all libraries as link-flags.
- moved FRAMEWORK_SEARCH_PATHS to project-level for consistency in future targets.
- moved LIBRARY_SEARCH_PATHS to project-level for conistency.
- enabled GCC_WARN_TYPECHECK_CALLS_TO_PRINTF at project-level.

[this changeset should not be a factor for other platforms; no side effects are expected]

git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2257 b64f7644-9d1e-0410-96f1-a4d463321fa5

macosx/HandBrake.xcodeproj/project.pbxproj
make/configure.py
make/include/main.rules
make/test/build.matrix.darwin
make/xcodemake

index 12812c67cb42f168622410f5aa5057d6f519bb54..bfd7d539f6991aa49f0490851ed4e9c7e71d0238 100644 (file)
                253886180BFE0C160064E995 /* HBOutputPanelController.m in Sources */ = {isa = PBXBuildFile; fileRef = 253886160BFE0C160064E995 /* HBOutputPanelController.m */; };
                25DE1FB60C169A0C00F01FC8 /* HBPreferencesController.h in Headers */ = {isa = PBXBuildFile; fileRef = 25DE1FB40C169A0C00F01FC8 /* HBPreferencesController.h */; };
                25DE1FB70C169A0C00F01FC8 /* HBPreferencesController.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE1FB50C169A0C00F01FC8 /* HBPreferencesController.m */; };
+               2713E6300F676510002E0A01 /* libhb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2713E50C0F675F32002E0A01 /* libhb.a */; };
+               2713E6420F676526002E0A01 /* libhb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2713E50C0F675F32002E0A01 /* libhb.a */; };
+               2774BE900F66F47100B65FC6 /* libbz2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 2774BE8F0F66F47100B65FC6 /* libbz2.dylib */; };
+               2774BE920F66F48200B65FC6 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 2774BE910F66F48200B65FC6 /* libz.dylib */; };
+               2774BEC70F66F61A00B65FC6 /* libbz2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 2774BE8F0F66F47100B65FC6 /* libbz2.dylib */; };
+               2774BEC80F66F61A00B65FC6 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 2774BE910F66F48200B65FC6 /* libz.dylib */; };
                278070240F5C261300699207 /* ChapterTitles.h in Headers */ = {isa = PBXBuildFile; fileRef = 593034E90BBA39A100172349 /* ChapterTitles.h */; };
                27AC71850F5A0AF600053B83 /* fakexcode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 27AC71840F5A0AF600053B83 /* fakexcode.cpp */; };
-               4D1125D809D72FD200E0657B /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D1125D709D72FD200E0657B /* libz.dylib */; };
                4DD93F8F082036E8008E1322 /* Controller.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DF3C8CB052889CD00A80101 /* Controller.h */; };
                4DD93F92082036E8008E1322 /* HBPreviewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D1FD381073D19CE00E46515 /* HBPreviewController.h */; };
                4DD93F97082036E8008E1322 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
                253886160BFE0C160064E995 /* HBOutputPanelController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HBOutputPanelController.m; sourceTree = "<group>"; };
                25DE1FB40C169A0C00F01FC8 /* HBPreferencesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HBPreferencesController.h; sourceTree = "<group>"; };
                25DE1FB50C169A0C00F01FC8 /* HBPreferencesController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HBPreferencesController.m; sourceTree = "<group>"; };
+               2713E50C0F675F32002E0A01 /* libhb.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libhb.a; path = libhb/libhb.a; sourceTree = BUILT_PRODUCTS_DIR; };
+               2774BE8F0F66F47100B65FC6 /* libbz2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libbz2.dylib; path = usr/lib/libbz2.dylib; sourceTree = SDKROOT; };
+               2774BE910F66F48200B65FC6 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
                27AC71840F5A0AF600053B83 /* fakexcode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = fakexcode.cpp; path = ../test/fakexcode.cpp; sourceTree = SOURCE_ROOT; };
                29B97316FDCFA39411CA2CEA /* main.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = main.mm; sourceTree = "<group>"; };
                29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
                29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
-               4D1125D709D72FD200E0657B /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = /usr/lib/libz.dylib; sourceTree = "<absolute>"; };
                4D1FD381073D19CE00E46515 /* HBPreviewController.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = HBPreviewController.h; sourceTree = "<group>"; };
                4D1FD382073D19CE00E46515 /* HBPreviewController.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = HBPreviewController.mm; sourceTree = "<group>"; };
                4DDE9724052B7B2B00C39CA9 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
                        files = (
                                D289A9F30DBBE7AC00CE614B /* CoreServices.framework in Frameworks */,
                                D289AAC40DBBF3F100CE614B /* IOKit.framework in Frameworks */,
+                               2713E6300F676510002E0A01 /* libhb.a in Frameworks */,
+                               2774BE900F66F47100B65FC6 /* libbz2.dylib in Frameworks */,
+                               2774BE920F66F48200B65FC6 /* libz.dylib in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                                A20F47010EBB5EC2005B861B /* QTKit.framework in Frameworks */,
                                4DD93FA4082036E8008E1322 /* OpenGL.framework in Frameworks */,
                                4DD93FA3082036E8008E1322 /* IOKit.framework in Frameworks */,
-                               4D1125D809D72FD200E0657B /* libz.dylib in Frameworks */,
                                A29E05800BE1283E000533F5 /* Growl.framework in Frameworks */,
                                A2D0A0AB0D3E5929002D57CB /* Sparkle.framework in Frameworks */,
+                               2713E6420F676526002E0A01 /* libhb.a in Frameworks */,
+                               2774BEC70F66F61A00B65FC6 /* libbz2.dylib in Frameworks */,
+                               2774BEC80F66F61A00B65FC6 /* libz.dylib in Frameworks */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
                                D289A9F20DBBE7AC00CE614B /* CoreServices.framework */,
                                A2D0A0AA0D3E5929002D57CB /* Sparkle.framework */,
                                A29E057F0BE1283E000533F5 /* Growl.framework */,
-                               4D1125D709D72FD200E0657B /* libz.dylib */,
                                1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
                                4DEB2024052B055F00C39CA9 /* IOKit.framework */,
                                4DDE9724052B7B2B00C39CA9 /* OpenGL.framework */,
                                29B97325FDCFA39411CA2CEA /* Foundation.framework */,
                                29B97324FDCFA39411CA2CEA /* AppKit.framework */,
+                               2713E50C0F675F32002E0A01 /* libhb.a */,
+                               2774BE8F0F66F47100B65FC6 /* libbz2.dylib */,
+                               2774BE910F66F48200B65FC6 /* libz.dylib */,
                        );
                        name = Frameworks;
                        sourceTree = "<group>";
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
                                GCC_MODEL_TUNING = G5;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                SYMROOT = "$(EXTERNAL_BUILD)/macosx";
                27B4DEB30F65BAB600098046 /* standard.i386 */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
                                GCC_MODEL_TUNING = G5;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                SYMROOT = "$(EXTERNAL_BUILD)/macosx";
                27B4DEB90F65BAB700098046 /* standard.x86_64 */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
                                GCC_MODEL_TUNING = G5;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                SYMROOT = "$(EXTERNAL_BUILD)/macosx";
                27B4DEBF0F65BAB800098046 /* standard.ppc */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
                                GCC_MODEL_TUNING = G5;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                SYMROOT = "$(EXTERNAL_BUILD)/macosx";
                27B4DEC50F65BAB900098046 /* standard.ppc64 */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
                                GCC_OPTIMIZATION_LEVEL = 0;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                STRIP_INSTALLED_PRODUCT = NO;
                27B4DECB0F65BABC00098046 /* debug.i386 */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
                                GCC_OPTIMIZATION_LEVEL = 0;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                STRIP_INSTALLED_PRODUCT = NO;
                27B4DED10F65BABD00098046 /* debug.x86_64 */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
                                GCC_OPTIMIZATION_LEVEL = 0;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                STRIP_INSTALLED_PRODUCT = NO;
                27B4DED70F65BABD00098046 /* debug.ppc */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
                                GCC_OPTIMIZATION_LEVEL = 0;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                STRIP_INSTALLED_PRODUCT = NO;
                27B4DEDD0F65BABD00098046 /* debug.ppc64 */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                        buildSettings = {
                                INSTALL_PATH = /usr/local/bin;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrakeCLI;
                        };
                4D4E7BC1087804870051572B /* debug */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                4D4E7BC2087804870051572B /* standard */ = {
                        isa = XCBuildConfiguration;
                        buildSettings = {
-                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                IBC_PLUGINS = /System/Library/Frameworks/QTKit.framework/Resources/QTKitIBPlugin.ibplugin;
                                IBC_PLUGIN_SEARCH_PATHS = /System/Library/Frameworks/QTKit.framework/Resources;
                                INFOPLIST_FILE = Info.plist;
                                INFOPLIST_PREFIX_HEADER = "$(EXTERNAL_BUILD)/macosx/Info.h";
                                INFOPLIST_PREPROCESS = YES;
                                OTHER_LDFLAGS = (
-                                       "$(EXTERNAL_BUILD)/libhb/libhb.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/liba52.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavcodec.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libavformat.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libavutil.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libdvdread.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libfaac.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmp3lame.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libmp4v2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libmpeg2.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
+                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbis.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libvorbisenc.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libogg.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libsamplerate.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libx264.a",
                                        "$(EXTERNAL_BUILD)/contrib/lib/libxvidcore.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libdca.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libmkv.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libswscale.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libtheora.a",
-                                       "$(EXTERNAL_BUILD)/contrib/lib/libfaad.a",
-                                       "-lbz2",
-                                       "-lz",
                                );
                                PRODUCT_NAME = HandBrake;
                                WARNING_CFLAGS = (
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
                                GCC_OPTIMIZATION_LEVEL = 0;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                STRIP_INSTALLED_PRODUCT = NO;
                                EXTERNAL_JOBS = 1;
                                EXTERNAL_METHOD = xcode;
                                EXTERNAL_SRC = ..;
+                               FRAMEWORK_SEARCH_PATHS = "$(EXTERNAL_SRC)/macosx";
                                GCC_DYNAMIC_NO_PIC = YES;
                                GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
                                GCC_MODEL_TUNING = G5;
+                               GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES;
                                HEADER_SEARCH_PATHS = "$(EXTERNAL_BUILD)/libhb";
                                IBC_NOTICES = NO;
                                IBC_WARNINGS = NO;
+                               LIBRARY_SEARCH_PATHS = (
+                                       "$(EXTERNAL_BUILD)/libhb",
+                                       "$(EXTERNAL_BUILD)/contrib/lib",
+                               );
                                OBJROOT = "$(EXTERNAL_BUILD)/macosx";
                                PREBINDING = NO;
+                               SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
                                SDKROOT = macosx10.5;
                                SHARED_PRECOMPS_DIR = "$(SYMROOT)/cache";
                                SYMROOT = "$(EXTERNAL_BUILD)/macosx";
index 17451254ef7e12d71ac7389c9564fee8239dae96..26a1dc118af852fe3d92524e3ae755d08ce199d8 100644 (file)
@@ -528,7 +528,7 @@ class SelectMode( dict ):
         self.mode     = self.default
 
     def cli_add_option( self, parser, option ):
-        parser.add_option( '', option, default=self.mode, metavar='MODE',
+        parser.add_option( option, default=self.mode, metavar='MODE',
             help='select %s mode: %s' % (self.descr,self.toString()),
             action='callback', callback=self.cli_callback, type='str' )
 
@@ -696,7 +696,7 @@ class ToolProbe( Action ):
             self.msg_end = 'not found'
 
     def cli_add_option( self, parser ):
-        parser.add_option( '', '--'+self.name, metavar='PROG',
+        parser.add_option( '--'+self.name, metavar='PROG',
             help='[%s]' % (self.pathname),
             action='callback', callback=self.cli_callback, type='str' )
 
@@ -736,7 +736,7 @@ class SelectTool( Action ):
             self.msg_end = 'not found'
 
     def cli_add_option( self, parser ):
-        parser.add_option( '', '--'+self.name, metavar='MODE',
+        parser.add_option( '--'+self.name, metavar='MODE',
             help='select %s mode: %s' % (self.name,self.toString()),
             action='callback', callback=self.cli_callback, type='str' )
 
@@ -875,24 +875,50 @@ class ConfigDocument:
 ##
 ## create cli parser
 ##
+
+## class to hook options and create CONF.args list
+class Option( optparse.Option ):
+    conf_args = []
+
+    def _conf_record( self, opt, value ):
+        ## skip conf,force,launch
+        if re.match( '^--(conf|force|launch).*$', opt ):
+            return
+
+        ## remove duplicates (last duplicate wins)
+        for i,arg in enumerate( Option.conf_args ):
+            if opt == arg[0]:
+                del Option.conf_args[i]
+                break
+
+        if value:
+            Option.conf_args.append( [opt,'%s=%s' % (opt,value)] )
+        else:
+            Option.conf_args.append( [opt,'%s' % (opt)] )
+
+    def take_action( self, action, dest, opt, value, values, parser ):
+        self._conf_record( opt, value )
+        return optparse.Option.take_action( self, action, dest, opt, value, values, parser )
+
 def createCLI():
     cli = OptionParser( 'usage: %prog [OPTIONS...] [TARGETS...]' )
+    cli.option_class = Option
 
     cli.description = ''
     cli.description += 'Configure %s build system.' % (project.name)
 
     ## add hidden options
-    cli.add_option( '', '--conf-method', default='terminal', action='store', help=optparse.SUPPRESS_HELP )
-    cli.add_option( '', '--force', default=False, action='store_true', help='overwrite existing build config' )
-    cli.add_option( '', '--verbose', default=False, action='store_true', help='increase verbosity' )
+    cli.add_option( '--conf-method', default='terminal', action='store', help=optparse.SUPPRESS_HELP )
+    cli.add_option( '--force', default=False, action='store_true', help='overwrite existing build config' )
+    cli.add_option( '--verbose', default=False, action='store_true', help='increase verbosity' )
 
     ## add install options
     grp = OptionGroup( cli, 'Directory Locations' )
-    grp.add_option( '', '--src', default=cfg.src_dir, action='store', metavar='DIR',
+    grp.add_option( '--src', default=cfg.src_dir, action='store', metavar='DIR',
         help='specify top-level source dir [%s]' % (cfg.src_dir) )
-    grp.add_option( '', '--build', default=cfg.build_dir, action='store', metavar='DIR',
+    grp.add_option( '--build', default=cfg.build_dir, action='store', metavar='DIR',
         help='specify build scratch/output dir [%s]' % (cfg.build_dir) )
-    grp.add_option( '', '--prefix', default=cfg.prefix_dir, action='store', metavar='DIR',
+    grp.add_option( '--prefix', default=cfg.prefix_dir, action='store', metavar='DIR',
         help='specify install dir for products [%s]' % (cfg.prefix_dir) )
     cli.add_option_group( grp )
 
@@ -900,25 +926,25 @@ def createCLI():
     grp = OptionGroup( cli, 'Feature Options' )
 
     h = IfHost( 'enable assembly code in non-contrib modules', 'NOMATCH*-*-darwin*', 'NOMATCH*-*-linux*', none=optparse.SUPPRESS_HELP ).value
-    grp.add_option( '', '--enable-asm', default=False, action='store_true', help=h )
+    grp.add_option( '--enable-asm', default=False, action='store_true', help=h )
 
     h = IfHost( 'disable GTK GUI', '*-*-linux*', none=optparse.SUPPRESS_HELP ).value
-    grp.add_option( '', '--disable-gtk', default=False, action='store_true', help=h )
+    grp.add_option( '--disable-gtk', default=False, action='store_true', help=h )
 
     h = IfHost( 'disable Xcode', '*-*-darwin*', none=optparse.SUPPRESS_HELP ).value
-    grp.add_option( '', '--disable-xcode', default=False, action='store_true', help=h )
+    grp.add_option( '--disable-xcode', default=False, action='store_true', help=h )
 
     cli.add_option_group( grp )
 
     ## add launch options
     grp = OptionGroup( cli, 'Launch Options' )
-    grp.add_option( '', '--launch', default=False, action='store_true',
+    grp.add_option( '--launch', default=False, action='store_true',
         help='launch build, capture log and wait for completion' )
-    grp.add_option( '', '--launch-jobs', default=1, action='store', metavar='N', type='int',
+    grp.add_option( '--launch-jobs', default=1, action='store', metavar='N', type='int',
         help='allow N jobs at once; 0 to match CPU count [1]' )
-    grp.add_option( '', '--launch-args', default=None, action='store', metavar='ARGS',
+    grp.add_option( '--launch-args', default=None, action='store', metavar='ARGS',
         help='specify additional ARGS for launch command' )
-    grp.add_option( '', '--launch-quiet', default=False, action='store_true',
+    grp.add_option( '--launch-quiet', default=False, action='store_true',
         help='do not echo build output while waiting' )
     cli.add_option_group( grp )
 
@@ -1128,10 +1154,8 @@ try:
     ## add configure line for reconfigure purposes
     doc.addBlank()
     args = []
-    for arg in sys.argv[1:]:
-        if arg == '--launch':
-            continue
-        args.append( arg )
+    for arg in Option.conf_args:
+        args.append( arg[1] )
     doc.add( 'CONF.args', ' '.join( args ))
 
     doc.addBlank()
index 818e09c2fcfa2dcc47c756795e856e28b446bae2..d1a16212a54487b21534550317ed5b8d119f7492 100644 (file)
@@ -40,7 +40,7 @@ include $(MODULES:%=$(SRC/)%/module.rules)
 
 ## target which causes re-configure if project-root is svn update'd
 $(BUILD/)GNUmakefile: $(wildcard $(SRC/).svn/entries)
-       $(SRC/)configure $(CONF.args)
+       $(SRC/)configure --force $(CONF.args)
 
 ## target useful to force reconfigure; only helpful for build-system development
 .PHONY: reconfigure
index 4ed0e6f07a60d035560897b8c2a54db987a163b6..7620707b520f5811bba1c2b96ca3f3f2976dcce3 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/bash
 #
 
-## This is a script used to launch a wide variaet of builds for darwin.
+## This script is used to launch a wide variety of builds for darwin.
 ## It is unsupported and is meant for use only with build-system testing.
 
 if [ -z "$1" ]; then
index aca4c41cd85c975ecc6fc6224f2af8b45c36eb86..4854ec2d4792052cc6fe7a72c6234e980aab4333 100755 (executable)
@@ -49,9 +49,8 @@ if [ -n "$reconfigure" ]; then
     esac
 
     ## invoke configure with (hidden) option which indicates conf performed by xcode
-    (set -x; $EXTERNAL_SRC/configure --force --build=$EXTERNAL_BUILD \
-        $EXTERNAL_CONFARGS \
-        --arch=$ARCHS $debug --conf-method=xcode PATH=$PATH )
+    (set -x; $EXTERNAL_SRC/configure --force $EXTERNAL_CONFARGS \
+        --build=$EXTERNAL_BUILD --arch=$ARCHS $debug --conf-method=xcode PATH=$PATH )
 fi
 
 ## compute goals; these correlate with TARGET_NAME and ACTION from Xcode