[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