Subject: Re: x11/Xfixes fails to build on Solaris
To: None <segv@netctl.net>
From: Gilles Dauphin <Gilles.Dauphin@enst.fr>
List: tech-pkg
Date: 08/23/2005 10:47:19
I add a comment, for this patch (Sorry for second send):
--------------------------------------------------------------------
[root@redhot 399] !diff
diff -bu builtin.mk.orig builtin.mk
--- builtin.mk.orig     Tue Aug 23 09:59:00 2005
+++ builtin.mk  Tue Aug 23 10:26:20 2005
@@ -22,8 +22,16 @@
 # of one of the pkgsrc-installed X11 distributions.
 #  
 .  if exists(${H_XFIXESPROTO}) && exists(${H_XFIXESWIRE})
+.    if ${OPSYS} == "SunOS" && ${OS_VERSION} == "5.10"
+# that is not correct, but work. In solaris10 Xfixes is release 3.0
+# The actual pkgsrc release is 2.0 (23 Aug 2005). So, making the lib would 
+# work. It install the wanted fixesext.pc in the right place: 
+# /usr/pkg/lib/pkgconfig/fixesext.pc
+IS_BUILTIN.fixesext=    no
+.    else
 IS_BUILTIN.fixesext=   yes
 .  endif
+.  endif
 .endif
 MAKEVARS+=     IS_BUILTIN.fixesext
 
[root@redhot 400]
---------------------------------------------------------------
> From: Gilles Dauphin <Gilles.Dauphin@enst.fr>
> 
> Just a workaround for segv,
> 
> I apply the following patch to x11/fixesext
> ------------------------------------------------
> [root@redhot 385] diff -bu builtin.mk.orig builtin.mk
> --- builtin.mk.orig     Tue Aug 23 09:59:00 2005
> +++ builtin.mk  Tue Aug 23 10:10:06 2005
> @@ -22,8 +22,15 @@
>  # of one of the pkgsrc-installed X11 distributions.
>  #  
>  .  if exists(${H_XFIXESPROTO}) && exists(${H_XFIXESWIRE})
> +.    if ${OPSYS} == "SunOS" && ${OS_VERSION} == "5.10"
> +# that is not correct, but work. In solaris10 Xfixes is release 3.0
> +# The actual pkgsrc release is 2.0 (23 Aug 2005). So, making the lib would 
> +# work.
> +IS_BUILTIN.fixesext=    no
> +.    else
>  IS_BUILTIN.fixesext=   yes
>  .  endif
> +.  endif
>  .endif
>  MAKEVARS+=     IS_BUILTIN.fixesext
>  
> [root@redhot 386] 
> -------------------------------------------------------\
> 
> Gilles
> 
> > From: Gilles Dauphin <Gilles.Dauphin@enst.fr>
> > Subject: Re: x11/Xfixes fails to build on Solaris
> > 
> > 
> > > Delivered-To: dauphin@enst.fr
> > > From: segv <segv@netctl.net>
> > > 
> > > On Tue, 16 Aug 2005 11:09:57 +0100
> > > segv <segv@netctl.net> wrote:
> > > 
> > > > On Tue, 16 Aug 2005 10:33:31 +0200 (CEST)
> > > > Gilles Dauphin <Gilles.Dauphin@enst.fr> wrote:
> > > > 
> > > > > put this line in mk.conf
> > > > > 
> > > > > PKG_CONFIG_LIBDIR=/usr/pkg/lib/pkgconfig
> > > > > 
> > > > > Gilles
> > > > 
> > > > Thanks, that fixed the problem. Just out of interest, why does it fail 
on
> > > > Solaris and needs this fix, and not on NetBSD? I mean is it just a 
> temporary
> > > > problem with that package that will be fixed, or do I need to keep the 
> above
> > > > variable in mk.conf for all future package builds on Solairs?
> > > 
> > > OK, this is strange, I was testing it again, so I removed all the packages 
> and
> > > started building them from scratch:
> > > 
> > > Building x11/Xfixes does not automatically build x11/fixesext, which I 
think 
> > is
> > > an error. And as expected x11/Xfixes then fails with
> > 
> > I think too.
> > 
> > The libXfixes is in Solaris 10 , (I can't find it in Solaris 9):
> > 
> > [root@redhot 214] ls -l /usr/openwin/sfw/lib/libXfixes.so.1
> > -rwxr-xr-x   1 root     bin        17148 Jan 23  2005 
> > /usr/openwin/sfw/lib/libXfixes.so.1*
> > [root@redhot 215] 
> > 
> >  The missing fixesext.pc must be build via pkgsrc/x11/fixesext.
> > 
> > There is minor diff between S10 and pkgsrc when installing fixesext:
> > ----------------------------------------------------------------------------
> > 
> > [root@u2 229] !diff
> > diff /usr/pkg/include/X11/extensions/xfixeswire.h 
> > /usr/openwin/include/X11/extensions/xfixeswire.h
> > 30c30
> > < #define XFIXES_MAJOR  2
> > ---
> > > #define XFIXES_MAJOR  3
> > 62a63,64
> > > /*************** Version 3 ******************/
> > > #define X_XFixesExpandRegion              28
> > 64c66
> > < #define XFixesNumberRequests              (X_XFixesChangeCursorByName+1)
> > ---
> > > #define XFixesNumberRequests              29
> > [root@u2 230] 
> > [root@u2 237] diff /usr/pkg/include/X11/extensions/Xfixes.h 
> > /usr/openwin/include/X11/extensions/ 
> > 31a32,38
> > > /*
> > >  * This revision number also appears in configure.ac, they have
> > >  * to be manually synchronized
> > >  */
> > > #define XFIXES_REVISION       0
> > > #define XFIXES_VERSION        ((XFIXES_MAJOR * 10000) + (XFIXES_MINOR * 
100) 
> + 
> > (XFIXES_REVISION))
> > > 
> > 65c72,73
> > <     char          *name;                  /* Version >= 2 only */
> > ---
> > > #if XFIXES_MAJOR >= 3
> > >     const char            *name;                  /* Version >= 3 only */
> > 66a75
> > > #endif
> > 81c90,92
> > <     char          *name;
> > ---
> > > #if XFIXES_MAJOR >= 3
> > >     const char            *name;                  /* Version >= 3 only */
> > > #endif
> > 92a104,107
> > > #if XFIXES_MAJOR >= 3
> > > int XFixesVersion (void);
> > > #endif
> > > 
> > 166a182,188
> > > #if XFIXES_MAJOR >= 3
> > > XRectangle *
> > > XFixesFetchRegionAndBounds (Display *dpy, XserverRegion region, 
> > >                           int *nrectanglesRet,
> > >                           XRectangle *bounds);
> > > #endif
> > > 
> > 182c204
> > < XFixesSetCursorName (Display *dpy, Cursor cursor, char *name);
> > ---
> > > XFixesSetCursorName (Display *dpy, Cursor cursor, const char *name);
> > 184c206
> > < char *
> > ---
> > > const char *
> > 191c213
> > < XFixesChangeCursorByName (Display *dpy, Cursor source, char *name);
> > ---
> > > XFixesChangeCursorByName (Display *dpy, Cursor source, const char *name);
> > 193c215
> > < #endif
> > ---
> > > #endif        /* XFIXES_MAJOR >= 2 */
> > 194a217,223
> > > #if XFIXES_MAJOR >= 3
> > > void
> > > XFixesExpandRegion (Display *dpy, XserverRegion dst, XserverRegion src,
> > >                   unsigned left, unsigned right,
> > >                   unsigned top, unsigned bottom);
> > > #endif        /* XFIXES_MAJOR >= 3 */
> > > 
> > [root@u2 238]
> > 
> > 
> > 
> > > 
> > > checking for fixesext >= 2.0... sh: gnome-config: not found
> > > sh: gnome-config: not found
> > > Package fixesext was not found in the pkg-config search path. Perhaps you
> > > should add the directory containing `fixesext.pc' to the PKG_CONFIG_PATH
> > > environment variable No package 'fixesext' found configure: error: Library
> > > requirements (fixesext >= 2.0) not met; consider adjusting the 
> PKG_CONFIG_PATH
> > > environment variable if your libraries are in a nonstandard prefix so
> > > pkg-config can find them. *** Error code 1
> > > 
> > > Stop.
> > > bmake: stopped in /opt/pkgsrc/x11/Xfixes
> > > ===> 
> > > ===> There was an error during the ``configure'' phase.
> > > ===> Please investigate the following for more information:
> > > ===>      * config.log
> > > ===>      * /opt/pkg32.obj/x11/Xfixes/work/.work.log
> > > ===> 
> > > *** Error code 1
> > > 
> > > I had to install x11/fixesext manually to correct this problem.
> > > Maybe something is getting messed up in the Makefiles?