Обсуждение: Re: [HACKERS] New psql compile problem.

Поиск
Список
Период
Сортировка

Re: [HACKERS] New psql compile problem.

От
Keith Parks
Дата:
>From: Tom Lane <tgl@sss.pgh.pa.us>
>
>Keith Parks <emkxp01@mtcc.demon.co.uk> writes:
>>>> make[2]: *** No rule to make target `../../../doc/src/sgml/ref/*.sgml', 
>>>> needed 
>>>> by `sql_help.h'.  Stop.
>>>> make[2]: Leaving directory `/export/home/pgsql/src/bin/psql'
>
>>> Do you have sgml files in that directory?  You should.
>
>> Plenty of them...
>>
>> directory. Not the usual sort of thing you see in makefiles.
>
>
>This makefile coding does depend on wildcard expansion in dependency
>lists, which is a GNU-make ism that probably doesn't get a lot of
>testing.  What version of make are you running?
>
>It might be worth changing the rule to use explicit wildcard expansion,
>
>sql_help.h: $(wildcard ../../../doc/src/sgml/ref/*.sgml) create_help.pl
>
>in case some versions of make need that extra cue to do the right thing...
>

My make is :-

bash-2.03$ make --version
GNU Make version 3.77, by Richard Stallman and Roland McGrath.
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98

so it's fairly recent. ( binary dist from the sunfreeware site. ) 

Your suggestion above fixes the problem so it might as well be
included in the official makefile.

*** src/bin/psql/Makefile.in.orig    Sun Nov  7 10:39:26 1999
--- src/bin/psql/Makefile.in    Sun Nov  7 10:40:30 1999
***************
*** 46,52 **** help.o: sql_help.h  ifneq ($(strip $(PERL)),) 
! sql_help.h: ../../../doc/src/sgml/ref/*.sgml create_help.pl     $(PERL) create_help.pl sql_help.h  else sql_help.h:
--- 46,52 ---- help.o: sql_help.h  ifneq ($(strip $(PERL)),) 
! sql_help.h: $(wildcard ../../../doc/src/sgml/ref/*.sgml) create_help.pl     $(PERL) create_help.pl sql_help.h  else
sql_help.h:


Further testing shows that make fails in this case but is OK in others.
bash-2.03$ cat Makefile2tmplist: /tmp/*           ls /tmp > tmplistbash-2.03$ make -f Makefile2ls /tmp > tmplist


I've just downloaded the source for GNU make 3.78.1 and built myself.
This version makes the above problem case without problems.


Keith.

I'm ccing this to steve@smc.vnet.net for info.

Steve, This was the version I had installed.

% pkginfo -l -d ./make-3.77-sol7-sparc-local  PKGINST:  SMCmake     NAME:  make CATEGORY:  application     ARCH:  sparc
VERSION:  3.77  BASEDIR:  /usr/local   VENDOR:  Free Software Foundation   PSTAMP:  Steve Christensen    EMAIL:
steve@smc.vnet.net  STATUS:  spooled    FILES:     52 spooled pathnames                6 directories                1
executables               2 package information files             4633 blocks used (approx)
 




Re: [HACKERS] New psql compile problem.

От
Bruce Momjian
Дата:
Applied.


> 
> >From: Tom Lane <tgl@sss.pgh.pa.us>
> >
> >Keith Parks <emkxp01@mtcc.demon.co.uk> writes:
> >>>> make[2]: *** No rule to make target `../../../doc/src/sgml/ref/*.sgml', 
> >>>> needed 
> >>>> by `sql_help.h'.  Stop.
> >>>> make[2]: Leaving directory `/export/home/pgsql/src/bin/psql'
> >
> >>> Do you have sgml files in that directory?  You should.
> >
> >> Plenty of them...
> >>
> >> directory. Not the usual sort of thing you see in makefiles.
> >
> >
> >This makefile coding does depend on wildcard expansion in dependency
> >lists, which is a GNU-make ism that probably doesn't get a lot of
> >testing.  What version of make are you running?
> >
> >It might be worth changing the rule to use explicit wildcard expansion,
> >
> >sql_help.h: $(wildcard ../../../doc/src/sgml/ref/*.sgml) create_help.pl
> >
> >in case some versions of make need that extra cue to do the right thing...
> >
> 
> My make is :-
> 
> bash-2.03$ make --version
> GNU Make version 3.77, by Richard Stallman and Roland McGrath.
> Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98
> 
> so it's fairly recent. ( binary dist from the sunfreeware site. ) 
> 
> Your suggestion above fixes the problem so it might as well be
> included in the official makefile.
> 
> *** src/bin/psql/Makefile.in.orig    Sun Nov  7 10:39:26 1999
> --- src/bin/psql/Makefile.in    Sun Nov  7 10:40:30 1999
> ***************
> *** 46,52 ****
>   help.o: sql_help.h
>   
>   ifneq ($(strip $(PERL)),) 
> ! sql_help.h: ../../../doc/src/sgml/ref/*.sgml create_help.pl
>       $(PERL) create_help.pl sql_help.h 
>   else
>   sql_help.h:
> --- 46,52 ----
>   help.o: sql_help.h
>   
>   ifneq ($(strip $(PERL)),) 
> ! sql_help.h: $(wildcard ../../../doc/src/sgml/ref/*.sgml) create_help.pl
>       $(PERL) create_help.pl sql_help.h 
>   else
>   sql_help.h:
> 
> 
> Further testing shows that make fails in this case but is OK in others.
> 
>     bash-2.03$ cat Makefile2
>     tmplist: /tmp/*
>             ls /tmp > tmplist
>     bash-2.03$ make -f Makefile2
>     ls /tmp > tmplist
> 
> 
> I've just downloaded the source for GNU make 3.78.1 and built myself.
> This version makes the above problem case without problems.
> 
> 
> Keith.
> 
> I'm ccing this to steve@smc.vnet.net for info.
> 
> Steve, This was the version I had installed.
> 
> % pkginfo -l -d ./make-3.77-sol7-sparc-local
>    PKGINST:  SMCmake
>       NAME:  make
>   CATEGORY:  application
>       ARCH:  sparc
>    VERSION:  3.77
>    BASEDIR:  /usr/local
>     VENDOR:  Free Software Foundation
>     PSTAMP:  Steve Christensen
>      EMAIL:  steve@smc.vnet.net
>     STATUS:  spooled
>      FILES:     52 spooled pathnames
>                  6 directories
>                  1 executables
>                  2 package information files
>               4633 blocks used (approx)
> 
>  
> 
> 
> ************
> 


--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026