[MacPorts] #18093: Xaw3d: reinplace didn't change anything
MacPorts
noreply at macports.org
Tue Feb 3 00:18:37 PST 2009
#18093: Xaw3d: reinplace didn't change anything
--------------------------------------+-------------------------------------
Reporter: ryandesign@… | Owner: macports-tickets@…
Type: defect | Status: reopened
Priority: Normal | Milestone: Port Bugs
Component: ports | Version: 1.7.0
Resolution: | Keywords:
Port: Xaw3d |
--------------------------------------+-------------------------------------
Changes (by ryandesign@…):
* cc: jeremyhu@… (added)
* status: closed => reopened
* resolution: fixed =>
Comment:
I spoke too soon.
On one of my systems (MacBook Pro, 10.4.11, Xcode 2.5, MacPorts 1.7.0) I
see this when configuring Xaw3d:
{{{
DEBUG: Searching for dependency: imake
DEBUG: Didn't find receipt, going to depspec regex for: imake
DEBUG: Found Dependency: path: /usr/X11R6/bin filename: xmkmf regex:
^xmkmf$
DEBUG: Executing org.macports.main (Xaw3d)
DEBUG: Skipping completed org.macports.fetch (Xaw3d)
DEBUG: Skipping completed org.macports.checksum (Xaw3d)
DEBUG: Skipping completed org.macports.extract (Xaw3d)
DEBUG: Executing org.macports.patch (Xaw3d)
---> Configuring Xaw3d
DEBUG: Using compiler 'Mac OS X gcc 4.0'
DEBUG: Executing org.macports.configure (Xaw3d)
DEBUG: Environment: MACOSX_DEPLOYMENT_TARGET='10.4'
DEBUG: Assembled command: 'cd
"/mp/var/macports/build/_Users_rschmidt_macports_dports_x11_Xaw3d/work/xc/lib/Xaw3d"
&& xmkmf'
imake -DUseInstalled -I/usr/X11R6/lib/X11/config
make: Nothing to be done for `Makefiles'.
}}}
imake was found in ${x11prefix} and it gets called with
"-I${x11prefix}/lib/X11/config" and puts root/wheel into the Makefile:
{{{
$ grep "wheel" -r $(port dir Xaw3d)/work/xc/
/Users/rschmidt/macports/dports/x11/Xaw3d/work/xc/lib/Xaw3d/Makefile:
INSTALLFLAGS = -c -o root -g wheel
grep: warning:
/Users/rschmidt/macports/dports/x11/Xaw3d/work/xc/lib/Xaw3d/X11/Xaw3d:
recursive directory loop
}}}
This must be the system on which I originally added the reinplace to
remove root/wheel, because if I don't, then I don't have permission to
install it because this MacPorts installation runs under my user, not
root.
{{{
$ port install gv
---> Fetching Xaw3d
---> Verifying checksum(s) for Xaw3d
---> Extracting Xaw3d
---> Configuring Xaw3d
---> Building Xaw3d
---> Staging Xaw3d into destroot
Error: Target org.macports.destroot returned: shell command " cd
"/mp/var/macports/build/_Users_rschmidt_macports_dports_x11_Xaw3d/work/xc/lib/Xaw3d"
&& make install
DESTDIR=/mp/var/macports/build/_Users_rschmidt_macports_dports_x11_Xaw3d/work/destroot
INCDIR=/mp/include SHLIBDIR=/mp/lib USRLIBDIR=/mp/lib " returned error 2
Command output: install -c -o root -g wheel -m 0644 libXaw3d.7.0.dylib
/mp/var/macports/build/_Users_rschmidt_macports_dports_x11_Xaw3d/work/destroot/mp/lib
install:
/mp/var/macports/build/_Users_rschmidt_macports_dports_x11_Xaw3d/work/destroot/mp/lib/libXaw3d.7.0.dylib:
chown/chgrp: Operation not permitted
make: *** [install] Error 71
}}}
If I install the imake port first, then I get:
{{{
DEBUG: Searching for dependency: imake
DEBUG: Found Dependency: receipt exists for imake
DEBUG: Executing org.macports.main (Xaw3d)
DEBUG: Skipping completed org.macports.fetch (Xaw3d)
DEBUG: Skipping completed org.macports.checksum (Xaw3d)
DEBUG: Skipping completed org.macports.extract (Xaw3d)
DEBUG: Executing org.macports.patch (Xaw3d)
---> Configuring Xaw3d
DEBUG: Using compiler 'Mac OS X gcc 4.0'
DEBUG: Executing org.macports.configure (Xaw3d)
DEBUG: Environment: MACOSX_DEPLOYMENT_TARGET='10.4'
DEBUG: Assembled command: 'cd
"/mp/var/macports/build/_Users_rschmidt_macports_dports_x11_Xaw3d/work/xc/lib/Xaw3d"
&& xmkmf'
imake -DUseInstalled -I/mp/lib/X11/config
make: Nothing to be done for `Makefiles'.
}}}
Now it finds imake in ${prefix}, calls imake with
"-I${prefix}/lib/X11/config" and the Makefile doesn't contain a reference
to root/wheel anymore, which is what I want:
{{{
$ grep "wheel" -r $(port dir Xaw3d)/work/xc/
grep: warning:
/Users/rschmidt/macports/dports/x11/Xaw3d/work/xc/lib/Xaw3d/X11/Xaw3d:
recursive directory loop
}}}
So should all imake-using ports be changed to bring in imake via a port-
style dependency instead (possibly except when using +system_x11 on
Tiger)?
--
Ticket URL: <http://trac.macports.org/ticket/18093#comment:2>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list