[MacPorts] #47907: libvpx: update to 1.4.0

MacPorts noreply at macports.org
Tue Jun 2 11:18:09 PDT 2015


#47907: libvpx: update to 1.4.0
---------------------------+----------------------
  Reporter:  ryandesign@…  |      Owner:  devans@…
      Type:  update        |     Status:  assigned
  Priority:  Normal        |  Milestone:
 Component:  ports         |    Version:
Resolution:                |   Keywords:  haspatch
      Port:  libvpx        |
---------------------------+----------------------
Changes (by ryandesign@…):

 * keywords:   => haspatch


Comment:

 Ok, most of the patches deal with disabusing the hand-rolled configure
 script of the idea that it should do different things on different OS X
 versions and that it should pick the SDK and deployment target, and I'm
 completely in favor of that, so let's keep those patches. The alternative
 is that the configure script needs to be patched every time a new version
 of OS X is released, which is a bit mad; we used to do that, until Jeremy
 fixed it with the current patches.

 -----

 There's another unrelated part of the patch that modifies two `sed`
 invocations. This was added in r70208 to fix comment:ticket:25815:26. It
 originally made these changes:

 {{{#!diff
 --- build/make/configure.sh.orig        2010-08-02 23:34:10.000000000
 -0400
 +++ build/make/configure.sh     2010-08-02 23:34:50.000000000 -0400
 @@ -375,10 +375,10 @@
  EOF

      if enabled rvct; then cat >> $1 << EOF
 -fmt_deps = sed -e 's;^__image.axf;\$(dir \$@)\$(notdir \$<).o \$@;' #hide
 +fmt_deps = sed -e 's;^__image.axf\$\$;\$(dir \$@)\$(notdir \$<).o \$@;'
 #hide
  EOF
      else cat >> $1 << EOF
 -fmt_deps = sed -e 's;^\(.*\)\.o;\$(dir \$@)\1\$(suffix \$<).o \$@;' #hide
 +fmt_deps = sed -e 's;^\(.*\)\.o\$\$;\$(dir \$@)\1\$(suffix \$<).o \$@;'
 #hide
  EOF
      fi

 }}}

 The intention was that after the various quoting is removed, a "`$`" will
 have been inserted at the end of the search string, anchoring the search
 string to the end of the line. The search string is already anchored to
 the beginning of the line with the leading "`^`". So whereas before the
 second invocation would find lines ''containing'' ".o", now it only finds
 lines that ''end'' with ".o". This is important because the intention of
 the second `sed` invocation was to identify object files whose names end
 with ".o", but it was finding other things as well, because the default
 build path in MacPorts contains the string "rsync.macports.org"—which just
 happens to contain ".o".

 The patch was updated in r74608 to accommodate changes between libvpx
 0.9.1 and 0.9.5—changes that made our patch unnecessary, and it could have
 been dropped at that time. But it was kept, and updated a couple times
 more, most recently in r117553, when it was changed in such a way that the
 original intention was lost:

 {{{
 #!diff
 --- build/make/configure.sh.orig        2015-04-17 10:56:45.000000000
 -0700
 +++ build/make/configure.sh     2015-04-17 10:58:27.000000000 -0700
 @@ -442,10 +442,10 @@
  EOF

      if enabled rvct; then cat >> $1 << EOF
 -fmt_deps = sed -e 's;^__image.axf;\${@:.d=.o} \$@;' #hide
 +fmt_deps = sed -e 's;^__image.axf;\$\${@:.d=.o} \$@;' #hide
  EOF
      else cat >> $1 << EOF
 -fmt_deps = sed -e 's;^\([a-zA-Z0-9_]*\)\.o;\${@:.d=.o} \$@;'
 +fmt_deps = sed -e 's;^\([a-zA-Z0-9_]*\)\.o;\$\${@:.d=.o} \$@;'
  EOF
      fi

 }}}

 Now it just doubles the "`$`" at the beginning of the replacement string,
 which was not the original intent. We should drop this part of the patch
 now.

 -----

 A final part of the patch was added just recently for #47436 and that part
 can I believe be removed now since that part of the code has changed in
 1.4.0. I do not understand the code, but I did not have any problem
 building universal with Xcode 6.3 without that patch, which was what the
 patch was intended to fix.

-- 
Ticket URL: <https://trac.macports.org/ticket/47907#comment:5>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list