#31821: reinplace -E doesn't work when /usr/bin/sed switches from BSD sed to GNU sed or vice versa ---------------------------------+------------------------------------------ Reporter: ekawahyu@… | Owner: macports-tickets@… Type: enhancement | Status: closed Priority: Low | Milestone: Component: base | Version: 2.0.3 Resolution: invalid | Keywords: Port: | ---------------------------------+------------------------------------------ Changes (by ryandesign@…): * cc: ryandesign@… (added) * component: ports => base * port: arm-none-eabi-binutils => Comment: In the specific case you found above, it's not arm-none-eabi-binutils' configuration program; it's MacPorts base itself, which has a "`reinplace`" command which portfiles can use, which is basically a wrapper to sed. The relevant reinplace that's demonstrating the problem is in the crossbinutils portgroup that the arm-none-eabi-binutils port (and the other cross-compiled binutils ports) use: browser:trunk/dports/_resources/port1.0/group/crossbinutils-1.0.tcl?rev=69962#L89 The `-E` switch that this `reinplace` is using means "use extended (i.e. modern) regular expressions". With BSD sed, the way to do that is to pass it the argument `-E`. With GNU sed, the argument is `-r`. MacPorts base's configure script will detect whether your sed is BSD sed or GNU sed and pass the correct argument: browser:trunk/base/aclocal.m4?rev=80222#L912 So the only reason this failed for you is that you configured and installed MacPorts base back when you had BSD sed, and then later you replaced sed with GNU sed -- or you installed MacPorts base from one of our pre-compiled disk images, which are built on such a system. -- Ticket URL: <https://trac.macports.org/ticket/31821#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS