Re: Build fixes (was Anything more for xproto 7.0.22?)
Hi Gaetan, Gaetan Nadon mems...@videotron.ca (09/06/2011): I have submitted a patch for xorg-sgml-doctools so that this situation no longer occurs. I also need to release a patch for the 21 modules with DocBook. In any case, don't let that hold the release of the package. There is no impact to the end user, he won't be able to install the package anyway if he does not have write permission. I just had a quick look, and make distcheck is indeed happy now, thanks! [I still have to deploy cross-references in all Debian packages though, but that's another story. ;-)] Mraw, KiBi. signature.asc Description: Digital signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Thu, 2011-06-16 at 01:46 +0200, Cyril Brulebois wrote: Hi Gaetan, Gaetan Nadon mems...@videotron.ca (09/06/2011): I have submitted a patch for xorg-sgml-doctools so that this situation no longer occurs. I also need to release a patch for the 21 modules with DocBook. In any case, don't let that hold the release of the package. There is no impact to the end user, he won't be able to install the package anyway if he does not have write permission. I just had a quick look, and make distcheck is indeed happy now, thanks! [I still have to deploy cross-references in all Debian packages though, but that's another story. ;-)] Great. I have pushed all the patches now. Read carefully the README in xorg-sgml-docs. This stuff is not easy. This is a list of subdirecties containg DocBook XML docs. It mat be useful for prototyping. You cd in there and run make uninstall clean install for a good test. # DocBook/XML doclib=\ libICE/specs\ libICE/doc \ libSM/doc \ libX11/specs/libX11 \ libX11/specs/i18n/framework \ libX11/specs/i18n/localedb \ libX11/specs/i18n/trans \ libX11/specs/XIM\ libX11/specs/XKB\ libXaw/specs\ libXdmcp/doc\ libXext/specs \ libXi/specs \ libXi/doc \ libXmu/doc \ libxtrans/doc \ libXtst/specs \ doclibdoc= \ libICE/doc \ libSM/doc \ libXdmcp/doc\ libXi/doc \ libXmu/doc \ libxtrans/doc \ doclibspecs= \ libICE/specs\ libX11/specs/libX11 \ libX11/specs/i18n/framework \ libX11/specs/i18n/localedb \ libX11/specs/i18n/trans \ libX11/specs/XIM\ libX11/specs/XKB\ libXaw/specs\ libXext/specs \ libXi/specs \ libXtst/specs \ docprotospecs= \ bigreqsproto/specs \ fontsproto/specs\ kbproto/specs \ recordproto/specs \ scrnsaverproto/specs\ xcmiscproto/specs \ xextproto/specs \ x11proto/specs \ docxorgdocs= \ xorg-docs/specs/Xserver \ xorg-docs/specs/Xext\ xorg-docs/specs/CTEXT \ xorg-docs/specs/XLFD\ xorg-docs/specs/ICCCM \ xorg-docs/general/input \ xorg-docs/general/graphics \ xorg-docs/general/fonts \ xorg-docs/general/platforms \ xorg-docs/general \ xserver/doc/dtrace (see a configuration option to be enabled) Beware that libX11 has pdf/ps turned off by default. Mraw, KiBi. signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sun, 2011-06-05 at 03:45 +0200, Cyril Brulebois wrote: Gaetan Nadon mems...@videotron.ca (04/06/2011): I never used DESTDIR with distcheck. I don't know if it makes sense or not. I tried any way, just to see what happens. The building of x11proto.pdf failed. [warning] /usr/bin/fop: Unable to locate fop in /home/nadon/xorg/src/proto/x11proto/tmp/usr/share/java Somehow $DESTDIR is used in front of /usr/share/java. That makes think your build did not have DESTDIR set when running distcheck as you would get the same error I had, in theory. I never used DESTDIR for distcheck either, but since I'm not building as root (!), *something* in there has to come into play and stop automake from trying to install to the “bare” location. A non-root make install with default settings just can't work. Some doc about distcheck is found here: http://www.gnu.org/software/automake/manual/automake.html#Preparing-Distributions Looking at the log: | test -d xproto-7.0.21/_build || exit 0; \ | dc_install_base=`CDPATH=${ZSH_VERSION+.}: cd | xproto-7.0.21/_inst pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ |dc_destdir=${TMPDIR-/tmp}/am-dc-$$/ \ |am__cwd=`pwd` \ |CDPATH=${ZSH_VERSION+.}: cd xproto-7.0.21/_build \ |../configure --srcdir=.. --prefix=$dc_install_base \ | \ |make \ |make dvi \ |make check \ |make install \ So it's assumed --prefix will do everything, and no DESTDIR is used at this point (it's checked later that setting DESTDIR works though). That's why the “let's ask xorg-sgml-doctools for the prefix” dance and its direct use breaks distcheck. Unless one has a user-specific (as opposed to system-wide) xorg-sgml-doctools, with appropriate permissions on the target directory. I have submitted a patch for xorg-sgml-doctools so that this situation no longer occurs. I also need to release a patch for the 21 modules with DocBook. In any case, don't let that hold the release of the package. There is no impact to the end user, he won't be able to install the package anyway if he does not have write permission. Mraw, KiBi. signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sun, 2011-06-05 at 14:50 -0400, Gaetan Nadon wrote: On Sun, 2011-06-05 at 14:11 -0400, Gaetan Nadon wrote: On Sun, 2011-06-05 at 18:34 +0200, Julien Cristau wrote: On Sun, Jun 5, 2011 at 11:22:31 -0400, Gaetan Nadon wrote: An alternative is to install the *.db files in their respective packages and have the xorg-sgml-doctools masterdb point to the packages. Either xorg-sgml-doctools doesn't know where the packages are installed, and shouldn't have to know. Please don't introduce a dependency loop here. Correct, it does not know and should not know about where other packages are installed (the value of their prefix). This is not what I am proposing. There is a requirement that all packages be installed under the prefix fir cross-referencing to work. The xorg-sgml-doctools can make an assumption based on that requirement and assume that packages were installed under the same prefix value. There is no guarantee they will be installed there, but there is no harm in making that assumption because if they aren't installed there, it won't work anyway (cross-referencing). That characteristic is unique to docs. Even if the packages are independent and can each be installed under different prefix, they must be installed under the same prefix for docs to work properly. When you look at things from the datarootdir/doc perspective, you must see a well formed tree of documents and thier target dbs as if it came from a monolithic tree. I am not insisting here, just explaining what this alternative is. I am not sure yet it is a good alternative, challenges are welcome. /usr/share/doc/libX11/libX11/libX11.html-installed by libX11 package /usr/share/sgml/X11/dbs/xorg.css-installed by xorg-sgml-doctools /usr/share/sgml/X11/dbs/masterdb.html.xml -instaled byxorg-sgml-doctools /usr/share/sgml/X11/dbs/libX11.html.db -currently installed by libX11 package in sgml dir /usr/share/doc/libX11/libX11/libX11.html.db -alternative: installed by libX11 package in docdir The generated html has a relative reference to the libX11.html file. If the referencing html is installed under a different prefix, the referenced html will not be found. a href=../libX11/libX11/libX11.html#xnextrequest class=olinkcode class=functionXNextRequest/code/a That's why I think it is safe to assume that packages are installed under the same prefix, because if they aren't, it won't work anyway. Of course, safe here means that it won't break it any more than it already is. The whole discussion about prefix assumptions is a moot point. If the tree isn't the way it is expected, it won't work. How the doc tree got out of whack is irrelevant. Trying to summarize what this alternative is: instead of installing the target dbs in sgml, install them where the docs normally are. Instead of sgml reading from sgml/X11/dbs for target dbs, read them from the doc directory. Just to follow-up. So far, everything works fine when installing the target dbs in their respective doc location. There is no issue with distcheck and write permissions as there is no attempt to install in a foreign directory. This solution works only because of the unique nature of the document tree. I am preparing patches for review. Note that 21 packages are affected by this change and I'll need to bump doctools version to 1.8 as well as their configure.ac and docbook.am file. The nice part is that the overall complexity is being reduced rather than being augmented by a workaround without adding any restrictions or fragile code. Cheers, Julien ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sat, Jun 4, 2011 at 09:25:07 -0400, Gaetan Nadon wrote: The DocBook/XML olink databases (this is what those files are) are installed in the location provided by the specs/Makefile variable sgmldbsdir which is set to $(XORG_SGML_PATH)/X11/dbs. The value of XORG_SGML_PATH is obtained from the macro XORG_CHECK_SGML_DOCTOOLS (see config.log). The macro obtains the value from pkg-config --variable=sgmlrootdir xorg-sgml-doctools. Perhaps the xorg-sgml-doctools was installed in /usr/share. That needs to be overridden for distcheck. One of the requirements of distcheck is that everything is installed under $prefix (which is different from xorg-sgml-doctools' prefix). So there needs to be a --with-sgml-path=foo override for the detected path. Cheers, Julien ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Jun 5, 2011 4:48 AM, Julien Cristau jcris...@debian.org wrote: On Sat, Jun 4, 2011 at 09:25:07 -0400, Gaetan Nadon wrote: The DocBook/XML olink databases (this is what those files are) are installed in the location provided by the specs/Makefile variable sgmldbsdir which is set to $(XORG_SGML_PATH)/X11/dbs. The value of XORG_SGML_PATH is obtained from the macro XORG_CHECK_SGML_DOCTOOLS (see config.log). The macro obtains the value from pkg-config --variable=sgmlrootdir xorg-sgml-doctools. Perhaps the xorg-sgml-doctools was installed in /usr/share. That needs to be overridden for distcheck. One of the requirements of distcheck is that everything is installed under $prefix (which is different from xorg-sgml-doctools' prefix). So there needs to be a --with-sgml-path=foo override for the detected path. Yeah, see evdev for instance overriding the server's header location during distcheck. Dan ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sun, 2011-06-05 at 11:48 +0200, Julien Cristau wrote: On Sat, Jun 4, 2011 at 09:25:07 -0400, Gaetan Nadon wrote: The DocBook/XML olink databases (this is what those files are) are installed in the location provided by the specs/Makefile variable sgmldbsdir which is set to $(XORG_SGML_PATH)/X11/dbs. The value of XORG_SGML_PATH is obtained from the macro XORG_CHECK_SGML_DOCTOOLS (see config.log). The macro obtains the value from pkg-config --variable=sgmlrootdir xorg-sgml-doctools. Perhaps the xorg-sgml-doctools was installed in /usr/share. That needs to be overridden for distcheck. One of the requirements of distcheck is that everything is installed under $prefix (which is different from xorg-sgml-doctools' prefix). So there needs to be a --with-sgml-path=foo override for the detected path. Cheers, Julien Yuck, I had not realized I had created one of those monsters. While xorg-sgml-doctools was read-only, no problem. When using it to populate the target dbs for document cross-referencing, write permission began to matter. An alternative is to install the *.db files in their respective packages and have the xorg-sgml-doctools masterdb point to the packages. Either way we do it, there will be warnings about olinks not found during distcheck. This is because for olinks to work, all packages, including xorg-sgml-doctools, must be installed under the same $prefix. I'll give that a try. Thanks! signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sun, Jun 5, 2011 at 11:22:31 -0400, Gaetan Nadon wrote: An alternative is to install the *.db files in their respective packages and have the xorg-sgml-doctools masterdb point to the packages. Either xorg-sgml-doctools doesn't know where the packages are installed, and shouldn't have to know. Please don't introduce a dependency loop here. Cheers, Julien ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sun, 2011-06-05 at 18:34 +0200, Julien Cristau wrote: On Sun, Jun 5, 2011 at 11:22:31 -0400, Gaetan Nadon wrote: An alternative is to install the *.db files in their respective packages and have the xorg-sgml-doctools masterdb point to the packages. Either xorg-sgml-doctools doesn't know where the packages are installed, and shouldn't have to know. Please don't introduce a dependency loop here. Correct, it does not know and should not know about where other packages are installed (the value of their prefix). This is not what I am proposing. There is a requirement that all packages be installed under the prefix fir cross-referencing to work. The xorg-sgml-doctools can make an assumption based on that requirement and assume that packages were installed under the same prefix value. There is no guarantee they will be installed there, but there is no harm in making that assumption because if they aren't installed there, it won't work anyway (cross-referencing). That characteristic is unique to docs. Even if the packages are independent and can each be installed under different prefix, they must be installed under the same prefix for docs to work properly. When you look at things from the datarootdir/doc perspective, you must see a well formed tree of documents and thier target dbs as if it came from a monolithic tree. I am not insisting here, just explaining what this alternative is. I am not sure yet it is a good alternative, challenges are welcome. /usr/share/doc/libX11/libX11/libX11.html-installed by libX11 package /usr/share/sgml/X11/dbs/xorg.css-installed by xorg-sgml-doctools /usr/share/sgml/X11/dbs/masterdb.html.xml -instaled byxorg-sgml-doctools /usr/share/sgml/X11/dbs/libX11.html.db -currently installed by libX11 package in sgml dir /usr/share/doc/libX11/libX11/libX11.html.db -alternative: installed by libX11 package in docdir The generated html has a relative reference to the libX11.html file. If the referencing html is installed under a different prefix, the referenced html will not be found. a href=../libX11/libX11/libX11.html#xnextrequest class=olinkcode class=functionXNextRequest/code/a That's why I think it is safe to assume that packages are installed under the same prefix, because if they aren't, it won't work anyway. Of course, safe here means that it won't break it any more than it already is. Cheers, Julien signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sun, 2011-06-05 at 14:11 -0400, Gaetan Nadon wrote: On Sun, 2011-06-05 at 18:34 +0200, Julien Cristau wrote: On Sun, Jun 5, 2011 at 11:22:31 -0400, Gaetan Nadon wrote: An alternative is to install the *.db files in their respective packages and have the xorg-sgml-doctools masterdb point to the packages. Either xorg-sgml-doctools doesn't know where the packages are installed, and shouldn't have to know. Please don't introduce a dependency loop here. Correct, it does not know and should not know about where other packages are installed (the value of their prefix). This is not what I am proposing. There is a requirement that all packages be installed under the prefix fir cross-referencing to work. The xorg-sgml-doctools can make an assumption based on that requirement and assume that packages were installed under the same prefix value. There is no guarantee they will be installed there, but there is no harm in making that assumption because if they aren't installed there, it won't work anyway (cross-referencing). That characteristic is unique to docs. Even if the packages are independent and can each be installed under different prefix, they must be installed under the same prefix for docs to work properly. When you look at things from the datarootdir/doc perspective, you must see a well formed tree of documents and thier target dbs as if it came from a monolithic tree. I am not insisting here, just explaining what this alternative is. I am not sure yet it is a good alternative, challenges are welcome. /usr/share/doc/libX11/libX11/libX11.html -installed by libX11 package /usr/share/sgml/X11/dbs/xorg.css -installed by xorg-sgml-doctools /usr/share/sgml/X11/dbs/masterdb.html.xml -instaled byxorg-sgml-doctools /usr/share/sgml/X11/dbs/libX11.html.db-currently installed by libX11 package in sgml dir /usr/share/doc/libX11/libX11/libX11.html.db -alternative: installed by libX11 package in docdir The generated html has a relative reference to the libX11.html file. If the referencing html is installed under a different prefix, the referenced html will not be found. a href=../libX11/libX11/libX11.html#xnextrequest class=olinkcode class=functionXNextRequest/code/a That's why I think it is safe to assume that packages are installed under the same prefix, because if they aren't, it won't work anyway. Of course, safe here means that it won't break it any more than it already is. The whole discussion about prefix assumptions is a moot point. If the tree isn't the way it is expected, it won't work. How the doc tree got out of whack is irrelevant. Trying to summarize what this alternative is: instead of installing the target dbs in sgml, install them where the docs normally are. Instead of sgml reading from sgml/X11/dbs for target dbs, read them from the doc directory. Cheers, Julien ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Fri, 2011-06-03 at 22:46 +0200, Cyril Brulebois wrote: Cyril Brulebois k...@debian.org (03/06/2011): Except it needs a patch for specs/SIAddresses (will be sent as a follow-up to this mail), and after that it still doesn't pass distcheck: (Reviewed-by: Alan, thanks.) | make[3]: Entering directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[4]: Entering directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[4]: Nothing to be done for `install-exec-am'. | test -z /home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto || /bin/mkdir -p /home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto | /usr/bin/install -c -m 644 ../../specs/x11protocol.xml ../../specs/encoding.xml ../../specs/glossary.xml ../../specs/keysyms.xml ../../specs/sect1-9.xml '/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto' | test -z /usr/share/sgml/X11/dbs || /bin/mkdir -p /usr/share/sgml/X11/dbs | /usr/bin/install -c -m 644 x11protocol.html.db x11protocol.fo.db '/usr/share/sgml/X11/dbs' | /usr/bin/install: cannot create regular file `/usr/share/sgml/X11/dbs/x11protocol.html.db': Permission denied | /usr/bin/install: cannot create regular file `/usr/share/sgml/X11/dbs/x11protocol.fo.db': Permission denied | make[4]: *** [install-sgmldbsDATA] Error 1 | make[4]: Leaving directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[3]: *** [install-am] Error 2 Any clue? Gaetan, maybe? Is it intentional for these files to be installed in /usr/share? The docs are installed in $home, so I wonder. The DocBook/XML olink databases (this is what those files are) are installed in the location provided by the specs/Makefile variable sgmldbsdir which is set to $(XORG_SGML_PATH)/X11/dbs. The value of XORG_SGML_PATH is obtained from the macro XORG_CHECK_SGML_DOCTOOLS (see config.log). The macro obtains the value from pkg-config --variable=sgmlrootdir xorg-sgml-doctools. Perhaps the xorg-sgml-doctools was installed in /usr/share. In order for the docs to be able to cross-reference, the docs (and their supporting db files) must form a tree once installed. In X.Org, one can install each of the hundreds of modules in different directory. This won't work for docs with cross-reference. I tried to explain this in the README: Build assumptions - Packages provide great flexibility, including the one to install each package documentation in a separate, totally unrelated directory using the --docdir configure option. For external references to work, it is assumed that the each package installs the documentation using the relative doc/${PACKAGE_TARNAME} location. The Docbook stylesheet technology will create references with paths relative to this location. It will navigate up to doc using ../ and then navigate down to the document it refers to. I may not have mentioned the same is true for the db files. They are created by the modules but installed in xorg-sgml-doctools. Bottom line is the installed docs and their dbs must be installed in the same tree. One scenario that I know would not work (for docs) is for people who build a single package against a distro. The docs in their home dir cannot refer to docs in /usr/share due to the db files and vice-versa. I don't recall I had anticipated the failure to install the db files however. All I can think of for now is to disable building the docs or install xorg-sgml-doctools in a user writable location. (Now cc'd) Apparently you should know about it. :D I git bisected it to (no surprise): da46c2d0e11c1709b7dd6b2c79253ce8751c81bb aka. “Documentation: add Docbook external references support” ;) Mraw, KiBi. ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
Gaetan Nadon mems...@videotron.ca (04/06/2011): Is it intentional for these files to be installed in /usr/share? The docs are installed in $home, so I wonder. This smells like a missing DESTDIR support or something similar. Our (Debian's) packages use a /usr prefix, but stuff is usually built from sources in $(CURDIR), below $(CURDIR)/build, and installed under $(CURDIR)/debian/tmp. Installing into $(CURDIR)/debian/tmp works by setting DESTDIR to that directory. I'd assume that distcheck does something similar. However, if you're blindly trying to access /usr or /usr/share directly at this point, you lose. Which I guess is happening here. KiBi. signature.asc Description: Digital signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sat, 2011-06-04 at 23:52 +0200, Cyril Brulebois wrote: Gaetan Nadon mems...@videotron.ca (04/06/2011): Is it intentional for these files to be installed in /usr/share? The docs are installed in $home, so I wonder. This smells like a missing DESTDIR support or something similar. Our (Debian's) packages use a /usr prefix, but stuff is usually built from sources in $(CURDIR), below $(CURDIR)/build, and installed under $(CURDIR)/debian/tmp. Installing into $(CURDIR)/debian/tmp works by setting DESTDIR to that directory. I'd assume that distcheck does something similar. However, if you're blindly trying to access /usr or /usr/share directly at this point, you lose. Which I guess is happening here. KiBi. What is unusual about the target dbs file (which aren't docs), it that they are not installed in any location governed by the x11proto package *dir variables such as docdir, datarootdir and so on. The installation location is obtained by questioning xorg-sgml-doctools package. I suspect this package, on your build, has been installed in /usr. I would be nice if you could verify that. Forgot to ask, you mention distcheck, but what happens with a regular make install? It should behave the same way. If not, we are falling in that category of scenario where we know we do not have permissions to install at that location, but we just want to create a tarball using distcheck, not really install the package. There are a few video drivers in that situation and there is a workaround. It's so hard to explain :-) signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
Gaetan Nadon mems...@videotron.ca (04/06/2011): What is unusual about the target dbs file (which aren't docs), it that they are not installed in any location governed by the x11proto package *dir variables such as docdir, datarootdir and so on. The installation location is obtained by questioning xorg-sgml-doctools package. I suspect this package, on your build, has been installed in /usr. I would be nice if you could verify that. Sorry it wasn't clear. Everything ends up (inside Debian packages, and on filesystems) under /usr. Here are files from xorg-sgml-doctools: /usr/share/pkgconfig/xorg-sgml-doctools.pc /usr/share/sgml/X11/defs.ent /usr/share/sgml/X11/xorg-fo.xsl /usr/share/sgml/X11/dbs/masterdb.pdf.xml /usr/share/sgml/X11/dbs/masterdb.txt.xml /usr/share/sgml/X11/dbs/masterdb.html.xml /usr/share/sgml/X11/dbs/masterdb.ps.xml /usr/share/sgml/X11/xorg.css /usr/share/sgml/X11/xorg.xsl /usr/share/sgml/X11/xorg-xhtml.xsl /usr/share/doc/xorg-sgml-doctools/changelog.gz /usr/share/doc/xorg-sgml-doctools/copyright /usr/share/doc/xorg-sgml-doctools/changelog.Debian.gz Forgot to ask, you mention distcheck, but what happens with a regular make install? It should behave the same way. If not, we are falling in that category of scenario where we know we do not have permissions to install at that location, but we just want to create a tarball using distcheck, not really install the package. There are a few video drivers in that situation and there is a workaround. It's so hard to explain :-) With --prefix=/usr, make install DESTDIR=/tmp/foo installs everything under /tmp/foo/usr With --prefix=/blah, make install DESTDIR=/tmp/foo installs most files under /tmp/foo/blah, but db files under /tmp/foo/usr, so it's the prefix chosen when building xorg-sgml-doctools that's taken into account, and DESTDIR is prepended, as expected: /tmp/foo/usr/share/sgml/X11/dbs/x11protocol.html.db /tmp/foo/usr/share/sgml/X11/dbs/x11protocol.fo.db vs: /tmp/foo/blah/lib/pkgconfig/xproto.pc /tmp/foo/blah/include/X11/* I really don't know what distcheck does (DESTDIR or something else), but I'm on my way to the manual. Mraw, KiBi. signature.asc Description: Digital signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
On Sun, 2011-06-05 at 01:34 +0200, Cyril Brulebois wrote: Gaetan Nadon mems...@videotron.ca (04/06/2011): What is unusual about the target dbs file (which aren't docs), it that they are not installed in any location governed by the x11proto package *dir variables such as docdir, datarootdir and so on. The installation location is obtained by questioning xorg-sgml-doctools package. I suspect this package, on your build, has been installed in /usr. I would be nice if you could verify that. Sorry it wasn't clear. Everything ends up (inside Debian packages, and on filesystems) under /usr. Here are files from xorg-sgml-doctools: /usr/share/pkgconfig/xorg-sgml-doctools.pc /usr/share/sgml/X11/defs.ent /usr/share/sgml/X11/xorg-fo.xsl /usr/share/sgml/X11/dbs/masterdb.pdf.xml /usr/share/sgml/X11/dbs/masterdb.txt.xml /usr/share/sgml/X11/dbs/masterdb.html.xml /usr/share/sgml/X11/dbs/masterdb.ps.xml /usr/share/sgml/X11/xorg.css /usr/share/sgml/X11/xorg.xsl /usr/share/sgml/X11/xorg-xhtml.xsl /usr/share/doc/xorg-sgml-doctools/changelog.gz /usr/share/doc/xorg-sgml-doctools/copyright /usr/share/doc/xorg-sgml-doctools/changelog.Debian.gz Forgot to ask, you mention distcheck, but what happens with a regular make install? It should behave the same way. If not, we are falling in that category of scenario where we know we do not have permissions to install at that location, but we just want to create a tarball using distcheck, not really install the package. There are a few video drivers in that situation and there is a workaround. It's so hard to explain :-) With --prefix=/usr, make install DESTDIR=/tmp/foo installs everything under /tmp/foo/usr With --prefix=/blah, make install DESTDIR=/tmp/foo installs most files under /tmp/foo/blah, but db files under /tmp/foo/usr, so it's the prefix chosen when building xorg-sgml-doctools that's taken into account, and DESTDIR is prepended, as expected: /tmp/foo/usr/share/sgml/X11/dbs/x11protocol.html.db /tmp/foo/usr/share/sgml/X11/dbs/x11protocol.fo.db vs: /tmp/foo/blah/lib/pkgconfig/xproto.pc /tmp/foo/blah/include/X11/* That looks right. I really don't know what distcheck does (DESTDIR or something else), but I'm on my way to the manual. I never used DESTDIR with distcheck. I don't know if it makes sense or not. I tried any way, just to see what happens. The building of x11proto.pdf failed. [warning] /usr/bin/fop: Unable to locate fop in /home/nadon/xorg/src/proto/x11proto/tmp/usr/share/java Somehow $DESTDIR is used in front of /usr/share/java. That makes think your build did not have DESTDIR set when running distcheck as you would get the same error I had, in theory. Mraw, KiBi. signature.asc Description: This is a digitally signed message part ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
Gaetan Nadon mems...@videotron.ca (04/06/2011): I never used DESTDIR with distcheck. I don't know if it makes sense or not. I tried any way, just to see what happens. The building of x11proto.pdf failed. [warning] /usr/bin/fop: Unable to locate fop in /home/nadon/xorg/src/proto/x11proto/tmp/usr/share/java Somehow $DESTDIR is used in front of /usr/share/java. That makes think your build did not have DESTDIR set when running distcheck as you would get the same error I had, in theory. I never used DESTDIR for distcheck either, but since I'm not building as root (!), *something* in there has to come into play and stop automake from trying to install to the “bare” location. A non-root make install with default settings just can't work. Some doc about distcheck is found here: http://www.gnu.org/software/automake/manual/automake.html#Preparing-Distributions Looking at the log: | test -d xproto-7.0.21/_build || exit 0; \ | dc_install_base=`CDPATH=${ZSH_VERSION+.}: cd | xproto-7.0.21/_inst pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ | dc_destdir=${TMPDIR-/tmp}/am-dc-$$/ \ | am__cwd=`pwd` \ | CDPATH=${ZSH_VERSION+.}: cd xproto-7.0.21/_build \ | ../configure --srcdir=.. --prefix=$dc_install_base \ |\ | make \ | make dvi \ | make check \ | make install \ So it's assumed --prefix will do everything, and no DESTDIR is used at this point (it's checked later that setting DESTDIR works though). That's why the “let's ask xorg-sgml-doctools for the prefix” dance and its direct use breaks distcheck. Unless one has a user-specific (as opposed to system-wide) xorg-sgml-doctools, with appropriate permissions on the target directory. Mraw, KiBi. signature.asc Description: Digital signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Build fixes (was Anything more for xproto 7.0.22?)
Daniel Stone dan...@fooishbar.org (03/06/2011): On Fri, Jun 03, 2011 at 03:02:58AM +0200, Cyril Brulebois wrote: it'd be nice to have new xproto soon, so that we can start using _X_UNUSED and friends (especially in the server), to get rid of some warnings. Is there anything which should be included in that release? Or can we just go ahead and tag it? Nothing to the best of my knowledge -- go ahead. Thanks. Except it needs a patch for specs/SIAddresses (will be sent as a follow-up to this mail), and after that it still doesn't pass distcheck: | make[3]: Entering directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[4]: Entering directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[4]: Nothing to be done for `install-exec-am'. | test -z /home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto || /bin/mkdir -p /home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto | /usr/bin/install -c -m 644 ../../specs/x11protocol.xml ../../specs/encoding.xml ../../specs/glossary.xml ../../specs/keysyms.xml ../../specs/sect1-9.xml '/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto' | test -z /usr/share/sgml/X11/dbs || /bin/mkdir -p /usr/share/sgml/X11/dbs | /usr/bin/install -c -m 644 x11protocol.html.db x11protocol.fo.db '/usr/share/sgml/X11/dbs' | /usr/bin/install: cannot create regular file `/usr/share/sgml/X11/dbs/x11protocol.html.db': Permission denied | /usr/bin/install: cannot create regular file `/usr/share/sgml/X11/dbs/x11protocol.fo.db': Permission denied | make[4]: *** [install-sgmldbsDATA] Error 1 | make[4]: Leaving directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[3]: *** [install-am] Error 2 Any clue? Gaetan, maybe? Mraw, KiBi. signature.asc Description: Digital signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Build fixes (was Anything more for xproto 7.0.22?)
Cyril Brulebois k...@debian.org (03/06/2011): Except it needs a patch for specs/SIAddresses (will be sent as a follow-up to this mail), and after that it still doesn't pass distcheck: (Reviewed-by: Alan, thanks.) | make[3]: Entering directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[4]: Entering directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[4]: Nothing to be done for `install-exec-am'. | test -z /home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto || /bin/mkdir -p /home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto | /usr/bin/install -c -m 644 ../../specs/x11protocol.xml ../../specs/encoding.xml ../../specs/glossary.xml ../../specs/keysyms.xml ../../specs/sect1-9.xml '/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_inst/share/doc/xproto' | test -z /usr/share/sgml/X11/dbs || /bin/mkdir -p /usr/share/sgml/X11/dbs | /usr/bin/install -c -m 644 x11protocol.html.db x11protocol.fo.db '/usr/share/sgml/X11/dbs' | /usr/bin/install: cannot create regular file `/usr/share/sgml/X11/dbs/x11protocol.html.db': Permission denied | /usr/bin/install: cannot create regular file `/usr/share/sgml/X11/dbs/x11protocol.fo.db': Permission denied | make[4]: *** [install-sgmldbsDATA] Error 1 | make[4]: Leaving directory `/home/kibi/debian-x/proto/x11proto-core.git/xproto-7.0.22/_build/specs' | make[3]: *** [install-am] Error 2 Any clue? Gaetan, maybe? (Now cc'd) Apparently you should know about it. :D I git bisected it to (no surprise): da46c2d0e11c1709b7dd6b2c79253ce8751c81bb aka. “Documentation: add Docbook external references support” ;) Mraw, KiBi. signature.asc Description: Digital signature ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel