Thread: CVS build problem - make world target

CVS build problem - make world target

From
Vladimir Kokovic
Date:
Hi,

System Configuration:
----------------------------------
  Architecture     :
     2 x Intel(R) Pentium(R) 4 CPU 3.20GHz, MMX SSE SSE2

  Operating System :
     DISTRIB_ID=Ubuntu, DISTRIB_RELEASE=10.04,
DISTRIB_CODENAME=lucid,DISTRIB_DESCRIPTION="Ubuntu 10.04 LTS"
     Linux vlD-kuci 2.6.32-22-generic #33-Ubuntu SMP Wed Apr 28 13:27:30 UTC
2010 i686 GNU/Linux

  PostgreSQL version :
     PostgreSQL CVS

  Compiler used  :
     gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5)
     openjade 1.4devel
     docbook 4.5-4
     xsltproc 1.1.26-1ubuntu1
     opensp  1.5.2-8


Please enter a FULL description of your problem:
----------------------------------------------------------------------------
I have tried to build CVS version with make world target, but something is
wrong.


build.sh
------------
#!/bin/sh
set -v
set -e
cd /media/sda5/postgresql-9.0devel/build
export CFLAGS="-g3 -gdwarf-2"
../../tmp/postgresql-cvs/pgsql/configure
'--srcdir=../../tmp/postgresql-cvs/pgsql' '--enable-cassert' '--enable-nls'
'--enable-integer-datetimes' '--with-perl' '--with-python' '--with-tcl'
'--with-krb5' '--with-openssl' '--enable-thread-safety' '--with-ldap'
'--prefix=/media/sda5/postgresql-9.0devel/9.0cvs20100429' >
configure-out1.log 2>&1
make world > make-out1.log 2>&1
make install-world > make-install-out1.log 2>&1
exit 0


configure-out1.log
----------------------------
...
checking for onsgmls... onsgmls
checking for openjade... openjade
checking for DocBook V4.2... yes
checking for DocBook stylesheets...
/usr/share/sgml/docbook/stylesheet/dsssl/modular
checking for collateindex.pl... /usr/bin/collateindex.pl
checking for xsltproc... xsltproc
checking for osx... osx
...


make-out1.log
----------------------
make -C doc all
make[1]: Entering directory `/media/sda5/postgresql-9.0devel/build/doc'
make -C src all
make[2]: Entering directory `/media/sda5/postgresql-9.0devel/build/doc/src'
make -C sgml all
make[3]: Entering directory
`/media/sda5/postgresql-9.0devel/build/doc/src/sgml'
{ \
      echo "<!entity version \"9.0devel\">"; \
      echo "<!entity majorversion \"9.0\">"; \
    } >version.sgml
"/usr/bin/perl"
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/
mk_feature_tables.pl YES
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/src/backend/catalog/sql_feature_packages.txt
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/src/backend/catalog/sql_features.txt
> features-supported.sgml
"/usr/bin/perl"
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/
mk_feature_tables.pl NO
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/src/backend/catalog/sql_feature_packages.txt
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/src/backend/catalog/sql_features.txt
> features-unsupported.sgml
openjade  -wall -wno-unused-param -wno-empty -wfully-tagged -D . -D
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml
-c /usr/share/sgml/docbook/stylesheet/dsssl/modular/catalog -d
stylesheet.dsl -t sgml -i output-html -V html-index
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/postgres.sgml
LC_ALL=C "/usr/bin/perl" /usr/bin/collateindex.pl -f -g -i 'bookindex' -o
bookindex.sgml HTML.index
Processing HTML.index...
1954 entries loaded...
0 entries ignored...
Done.
/bin/mkdir -p html
openjade  -wall -wno-unused-param -wno-empty -wfully-tagged -D . -D
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml
-c /usr/share/sgml/docbook/stylesheet/dsssl/modular/catalog -d
stylesheet.dsl -t sgml -i output-html -i include-index
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/postgres.sgml
cp
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/stylesheet.css
html/
touch html-stamp
make[3]: Circular postgres.xml <- postgres.sgml dependency dropped.
osx -D. -x lower
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/acronyms.sgml
| \
      "/usr/bin/perl" -p -e
's/\[(amp|copy|egrave|gt|lt|mdash|nbsp|ouml|pi|quot|uuml) *\]/\&\1;/g;' \
                 -e '$_ .= qq{<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook
XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">\n}
if $. == 1;' \
      >postgres.xml
osx:/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/acronyms.sgml:3:0:E:
prolog can't be omitted unless CONCUR NO and LINK EXPLICIT NO and either
IMPLYDEF ELEMENT YES or IMPLYDEF DOCTYPE YES
osx:/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/acronyms.sgml:3:0:E:
no document type declaration; will parse without validation
xsltproc --stringparam pg.version '9.0devel'
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/stylesheet-man.xsl
postgres.xml
Erro:  no refentry: No refentry elements found in "Acronyms".      Acronyms
touch man-stamp
make[3]: Leaving directory
`/media/sda5/postgresql-9.0devel/build/doc/src/sgml'
...
gcc -g3 -gdwarf-2 -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv
-fpic -shared  sslinfo.o   -L../../src/port
-Wl,-rpath,'/media/sda5/postgresql-9.0devel/9.0cvs20100429/lib' -lssl
-lcrypto -o sslinfo.so
make[2]: Leaving directory
`/media/sda5/postgresql-9.0devel/build/contrib/sslinfo'
make[1]: Leaving directory `/media/sda5/postgresql-9.0devel/build/contrib'
PostgreSQL, contrib, and documentation successfully made. Ready to install.


make-install-out1.log
---------------------------------
make -C doc install
make[1]: Entering directory `/media/sda5/postgresql-9.0devel/build/doc'
make -C src install
make[2]: Entering directory `/media/sda5/postgresql-9.0devel/build/doc/src'
make -C sgml install
make[3]: Entering directory
`/media/sda5/postgresql-9.0devel/build/doc/src/sgml'
/bin/mkdir -p
'/media/sda5/postgresql-9.0devel/9.0cvs20100429/share/doc/'/html
'/media/sda5/postgresql-9.0devel/9.0cvs20100429/share/man'/man1
'/media/sda5/postgresql-9.0devel/9.0cvs20100429/share/man'/man3
'/media/sda5/postgresql-9.0devel/9.0cvs20100429/share/man'/man7
cp -R `for f in ./html
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/html;
do test -r $f && echo $f && break; done`
'/media/sda5/postgresql-9.0devel/9.0cvs20100429/share/doc/'
cp -R `for f in ./man1
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/man1;
do test -r $f && echo $f && break; done` `for f in ./man3
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/man3;
do test -r $f && echo $f && break; done` `for f in ./man7
/media/sda5/postgresql-9.0devel/build/../../tmp/postgresql-cvs/pgsql/doc/src/sgml/man7;
do test -r $f && echo $f && break; done`
'/media/sda5/postgresql-9.0devel/9.0cvs20100429/share/man'
cp: missing destination file operand after
`/media/sda5/postgresql-9.0devel/9.0cvs20100429/share/man'
Try `cp --help' for more information.
make[3]: *** [install-man] Error 1
make[3]: Leaving directory
`/media/sda5/postgresql-9.0devel/build/doc/src/sgml'
make[2]: *** [install] Error 2
make[2]: Leaving directory `/media/sda5/postgresql-9.0devel/build/doc/src'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/media/sda5/postgresql-9.0devel/build/doc'
make: *** [install-world] Error 2


Best regards,
Vladimir Kokovic, DP senior, Belgrade, Serbia

Re: CVS build problem - make world target

From
Tom Lane
Date:
Vladimir Kokovic <kokovic.vladimir@gmail.com> writes:
> make[3]: Circular postgres.xml <- postgres.sgml dependency dropped.

[ followed by havoc as make passes the wrong $< file to osx ]

I can reproduce this when doing "make all" in doc/src/sgml in a
VPATH build, but not when doing it in the regular source tree.
I'm not sure if this is a make bug or something weird in our
make rules.  Any ideas?

            regards, tom lane

Re: CVS build problem - make world target

From
Tom Lane
Date:
I wrote:
> Vladimir Kokovic <kokovic.vladimir@gmail.com> writes:
>> make[3]: Circular postgres.xml <- postgres.sgml dependency dropped.

> [ followed by havoc as make passes the wrong $< file to osx ]

> I can reproduce this when doing "make all" in doc/src/sgml in a
> VPATH build, but not when doing it in the regular source tree.
> I'm not sure if this is a make bug or something weird in our
> make rules.  Any ideas?

I'm currently of the opinion that this is a gmake bug.  (For the record,
I'm seeing it with make 3.81 in Fedora 11.)  I found a pretty simple
workaround, though, which I have now committed.

            regards, tom lane

Re: CVS build problem - make world target

From
Vladimir Kokovic
Date:
Hi,

Tom, as always, you did the right thing !

make-out1.log
----------------------
...
PostgreSQL, contrib, and documentation successfully made. Ready to install.

make-install-out1.log
---------------------------------
...
PostgreSQL, contrib, and documentation installation complete.


On Sat, May 1, 2010 at 11:34 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:

> I wrote:
> > Vladimir Kokovic <kokovic.vladimir@gmail.com> writes:
> >> make[3]: Circular postgres.xml <- postgres.sgml dependency dropped.
>
> > [ followed by havoc as make passes the wrong $< file to osx ]
>
> > I can reproduce this when doing "make all" in doc/src/sgml in a
> > VPATH build, but not when doing it in the regular source tree.
> > I'm not sure if this is a make bug or something weird in our
> > make rules.  Any ideas?
>
> I'm currently of the opinion that this is a gmake bug.  (For the record,
> I'm seeing it with make 3.81 in Fedora 11.)  I found a pretty simple
> workaround, though, which I have now committed.
>
>                        regards, tom lane
>

Best regards,
Vladimir Kokovic, DP senior, Belgrade, Serbia