Menu

#4984 fix launch build for 10.13 SDK changes

Added_to_Fink
closed-accepted
None
5
2017-10-25
2017-08-26
No

The attached launch-1.1-1005 packaging fixes the build of the launch package to handle the SDK changes in AssertMacros.h with the following info file changes...

Index: launch.info
===================================================================
RCS file: /cvsroot/fink/dists/10.9-libcxx/stable/main/finkinfo/utils/launch.info,v
retrieving revision 1.1
diff -u -r1.1 launch.info
--- launch.info 10 Sep 2015 20:56:57 -0000  1.1
+++ launch.info 26 Aug 2017 15:25:08 -0000
@@ -1,6 +1,6 @@
 Package: launch
 Version: 1.1
-Revision: 1004
+Revision: 1005
 BuildDepends: xcode.app
 Source: http://web.sabi.net/nriley/software/%n-%v.tar.gz 
 Source-MD5: bcd5179d5b519248a717aa73f3819e00
@@ -10,6 +10,7 @@
 perl -ni -e 'print unless /SDKROOT/' launch.xcodeproj/project.pbxproj 
 perl -pi -e 's/i386/x86_64/' launch.xcodeproj/project.pbxproj
 if [ `uname -r | cut -d . -f 1` -ge 12 ] ; then perl -pi -e 's/.*kCGErrorApplicationRequiresNewerSystem.*//' main.c ; fi
+if [ `uname -r | cut -d . -f 1` -ge 17 ] ; then perl -pi -e 's/check\(url/__Check\(url/g' main.c ; fi
 <<
 CompileScript: <<
 #!/bin/csh -efv

Tested on 10.13 with 'fink -m'.

Discussion

  • Jack Howarth

    Jack Howarth - 2017-08-26

    Info file for launch-1.1-1005

     
  • Alexander Hansen

    Does the change above work on all supported OS versions? Asking because this wasn't explicitly stated and there isn't a Distribution tag.

     
  • Jack Howarth

    Jack Howarth - 2017-09-19
    The fix to use the __Check() macro is only applied if the build occurs on darwin17 or later. My undestanding is that this is just defining the assertion macro but doesn't actually create a symbol for check or __Check. For example. the current launch-1.1-1004 package produces a launch binary which shows...
    
    # nm ./launch | grep heck
    #
    
     

    Last edit: Jack Howarth 2017-09-19
    • Alexander Hansen

      Ah, right. I'm juggling too many browser-based diffs right now.

       
  • Alexander Hansen

    It doesn't build for me with 10.12 / Xcode 9. It appears that combination also needs the new patch.
    ...

    Ld launch normal x86_64
        cd /sw/src/fink.build/launch-1.1-1005/launch-1.1
        export MACOSX_DEPLOYMENT_TARGET=10.7
        /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -L/sw/src/fink.build/launch-1.1-1005/launch-1.1 -F/sw/src/fink.build/launch-1.1-1005/launch-1.1 -filelist /sw/src/fink.build/launch-1.1-1005/launch-1.1/launch.build/launch.build/Objects-normal/x86_64/launch.LinkFileList -mmacosx-version-min=10.7 -Xlinker -object_path_lto -Xlinker /sw/src/fink.build/launch-1.1-1005/launch-1.1/launch.build/launch.build/Objects-normal/x86_64/launch_lto.o -Xlinker -no_deduplicate -framework CoreFoundation -framework ApplicationServices -framework Carbon -framework Security -Xlinker -dependency_info -Xlinker /sw/src/fink.build/launch-1.1-1005/launch-1.1/launch.build/launch.build/Objects-normal/x86_64/launch_dependency_info.dat -o /sw/src/fink.build/launch-1.1-1005/launch-1.1/launch
    Undefined symbols for architecture x86_64:
      "_check", referenced from:
          _printPathFromURL in main.o
          _printInfoFromURL in main.o
    ld: symbol(s) not found for architecture x86_64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    
    ** BUILD FAILED **
    
     

    Last edit: Alexander Hansen 2017-10-04
  • Alexander Hansen

    • Group: Undergoing_Validation --> Awaiting_Update_from_Submitter
     
  • Alexander Hansen

    Added with some additional modifications:

    • Apply patch on darwin12, too -- it worked for me using Xcode 8 and Xcode 9.

    • DescPort note about the patch.

     

    Last edit: Alexander Hansen 2017-10-25
  • Alexander Hansen

    • status: open --> closed-accepted
    • Group: Awaiting_Update_from_Submitter --> Added_to_Fink
     

Log in to post a comment.