ld64: revise patches to not reference ..
|Reported by:||ryandesign (Ryan Schmidt)||Owned by:||mfeiri@…|
Some versions of /usr/bin/patch on Mac OS X have a security enhancement that makes them refuse to patch files higher up than the current directory. On such systems, trying to install ld64 results in the following:
DEBUG: Executing org.macports.patch (ld64) ---> Applying patches to ld64 ---> Applying /Users/rschmidt/macports/dports/devel/ld64/files/patch-lldb_private-libunwind.diff DEBUG: Environment: CPATH='/opt/local/include' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_Users_rschmidt_macports_dports_devel_ld64/work/.CC_PRINT_OPTIONS' LIBRARY_PATH='/opt/local/lib' CC_PRINT_OPTIONS='YES' MACOSX_DEPLOYMENT_TARGET='10.6' DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_devel_ld64/work/ld64-123.2" && /usr/bin/patch -p0' /usr/bin/patch: **** rejecting file name with ".." component: ../libunwind/include/libunwind.h shell command " cd "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_devel_ld64/work/ld64-123.2" && /usr/bin/patch -p0 < '/Users/rschmidt/macports/dports/devel/ld64/files/patch-lldb_private-libunwind.diff'" returned error 2
See #29813 for an example of how I fixed this same problem for the nvi port.