[113333] trunk/dports/gnome/gdm

Ryan Schmidt ryandesign at macports.org
Thu Nov 14 04:24:45 PST 2013


On Nov 13, 2013, at 11:49, devans at macports.org wrote:

> Revision
> 113333
> Author
> devans at macports.org
> Date
> 2013-11-13 09:49:19 -0800 (Wed, 13 Nov 2013)
> Log Message
> 
> gdm: merge version 3.10.0.1 from GNOME-3 test branch.
> Modified Paths
> 
> 	• trunk/dports/gnome/gdm/Portfile
> 	• trunk/dports/gnome/gdm/files/patch-configure.diff


> +--- configure.orig	2013-10-16 07:46:13.000000000 -0700
> ++++ configure	2013-11-08 21:31:12.000000000 -0800
> -@@ -23540,7 +23541,12 @@
> 
> +@@ -25473,7 +25474,17 @@
> 
>   # and /usr/X11 since they often symlink to each other, and configure
> 
>   # should use the more stable location (the real directory) if possible.
> 
>   #
> 
>  -if test -x /usr/X11/bin/Xserver; then
> 
> -+if test -x /opt/local/bin/Xquartz; then
> 
> ++if test -x @MP_PREFIX@/bin/Xquartz; then
> 
>  +   X_PATH="/opt/local/bin"
> 
>  +   X_SERVER_PATH="/opt/local/bin"
> 
>  +   X_SERVER="/opt/local/bin/Xquartz"
> 
>  +   X_CONFIG_OPTIONS="-audit 0"
> 
> ++elif test -x /opt/X11/bin/Xquartz; then
> ++   X_PATH="/opt/X11/bin"
> ++   X_SERVER_PATH="/opt/X11/bin"
> ++   X_SERVER="/opt/X11/bin/Xquartz"
> ++   X_CONFIG_OPTIONS="-audit 0"
> 

It looks like you’ve added a patch to change one instance of hardcoded /opt/local, but left three others. Isn’t this a problem?

In fact, this whole configure check is a problem. xorg-server is the port that provides /opt/local/bin/Xquartz, and gdm does not declare a dependency on it, but it builds itself differently depending on whether it’s installed or not.

If I have xorg-server installed and then build gdm:

$ strings /opt/local/libexec/gdm-simple-slave | grep bin/X
/opt/local/bin/Xquartz -background none -verbose%s

If I deactivate xorg-server and rebuild gdm:

$ strings /opt/local/libexec/gdm-simple-slave | grep bin/X
/usr/X11/bin/X -background none -verbose%s

The latter case also shows what would happen on our buildbots, since they don’t have any dependencies installed except those declared in the ports. If gdm were distributable, then our binary packages would be built like this.

The port should be changed to always build itself the same. Either add a dependency on xorg-server so it’s always used, or patch the configure script so it’s never used, even if it’s already installed.




More information about the macports-dev mailing list