Build failure in current CVS (src/backend/utils/mb/conversion_procs)

Started by John Grayover 23 years ago12 messages
#1John Gray
jgray@azuli.co.uk

Hi all,

I get the following when I attempt to build outside of the source tree.
All goes well until....

make[4]: Entering directory
`/home/jgray/postgres/pg-build/src/backend/utils/mb/conversion_procs/ascii_and_mic'
Makefile:11: ../proc.mk: No such file or directory
make[4]: *** No rule to make target `../proc.mk'. Stop.

Any suggestions. I've tried various things (cf. my previous message to
-hackers but had no success -I really don't quite get all the details of
the build or I would send a patch...)

Regards

John

--
John Gray
Azuli IT
www.azuli.co.uk

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: John Gray (#1)
Re: Build failure in current CVS (src/backend/utils/mb/conversion_procs)

John Gray <jgray@azuli.co.uk> writes:

I get the following when I attempt to build outside of the source tree.

It looks like the new stuff for loadable conversion modules is not
correct for building outside the source tree; it's being careless about
the paths it uses to find files. Tatsuo, can you fix that, or ask Peter
for help?

regards, tom lane

#3Peter Eisentraut
peter_e@gmx.net
In reply to: Tom Lane (#2)
Re: Build failure in current CVS (src/backend/utils/mb/conversion_procs)

Tom Lane writes:

John Gray <jgray@azuli.co.uk> writes:

I get the following when I attempt to build outside of the source tree.

It looks like the new stuff for loadable conversion modules is not
correct for building outside the source tree; it's being careless about
the paths it uses to find files. Tatsuo, can you fix that, or ask Peter
for help?

Tatsuo, why is there one directory per encoding combination with only one
source file each? Couldn't we put all the files in one directory?

--
Peter Eisentraut peter_e@gmx.net

#4Tatsuo Ishii
t-ishii@sra.co.jp
In reply to: Peter Eisentraut (#3)
Re: Build failure in current CVS

Tatsuo, why is there one directory per encoding combination with only one
source file each? Couldn't we put all the files in one directory?

euc_tw_and_big5 has *two* files. Also Unicode mapping files could be
moved to each directory. So the Unicode related functions might have
one more file. IMO giving a directory to each conversion
is more manageable than putting everything in single directory.
--
Tatsuo Ishii

#5Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tatsuo Ishii (#4)
Re: Build failure in current CVS (src/backend/utils/mb/conversion_procs)

Tatsuo Ishii <t-ishii@sra.co.jp> writes:

IMO giving a directory to each conversion
is more manageable than putting everything in single directory.

I lean towards Peter's point here. One or two files per conversion
is not unmanageable to keep in a single directory. And I have noticed
that "make" and "make install" are visibly slower than before because
they have to recurse into all these new subdirectories. I think the
accumulated developer time spent watching "make" will soon exceed any
possible benefit from splitting these files into subdirectories :-(

regards, tom lane

#6Tatsuo Ishii
t-ishii@sra.co.jp
In reply to: Tom Lane (#2)
Re: Build failure in current CVS

It looks like the new stuff for loadable conversion modules is not
correct for building outside the source tree; it's being careless about
the paths it uses to find files. Tatsuo, can you fix that, or ask Peter
for help?

I have applied following changes and am getting:

make: *** No rule to make target `ascii_and_mic.o', needed by `libascii_and_mic.so.0.0'. Stop.

under one of a conversion directory. The weird thing is I do not get
this if I do a build "inside" the source tree. Any idea?

Index: proc.mk
===================================================================
RCS file: /cvsroot/pgsql-server/src/backend/utils/mb/conversion_procs/proc.mk,v
retrieving revision 1.2
diff -c -r1.2 proc.mk
*** proc.mk	8 Aug 2002 07:47:43 -0000	1.2
--- proc.mk	21 Aug 2002 06:09:13 -0000
***************
*** 16,21 ****
  clean distclean maintainer-clean: clean-lib
  	$(RM) $(OBJS)

! include $(top_builddir)/src/Makefile.shlib

  all: $(shlib)
--- 16,21 ----
  clean distclean maintainer-clean: clean-lib
  	$(RM) $(OBJS)

! include $(top_srcdir)/src/Makefile.shlib

  all: $(shlib)
Index: ascii_and_mic/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile,v
retrieving revision 1.1
diff -c -r1.1 Makefile
*** ascii_and_mic/Makefile	14 Aug 2002 02:45:10 -0000	1.1
--- ascii_and_mic/Makefile	21 Aug 2002 06:09:13 -0000
***************
*** 8,11 ****

NAME := ascii_and_mic

! include ../proc.mk
--- 8,12 ----

NAME := ascii_and_mic

! include $(top_srcdir)/src/backend/utils/mb/conversion_procs/proc.mk
!

#7Peter Eisentraut
peter_e@gmx.net
In reply to: Tatsuo Ishii (#6)
Re: Build failure in current CVS

Tatsuo Ishii writes:

I have applied following changes and am getting:

make: *** No rule to make target `ascii_and_mic.o', needed by `libascii_and_mic.so.0.0'. Stop.

under one of a conversion directory. The weird thing is I do not get
this if I do a build "inside" the source tree. Any idea?

The following patch works, it just needs to be extrapolated to the other
directories.

diff -ru cvs-pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile
--- cvs-pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile	Wed Aug 14 04:45:10 2002
+++ pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile	Wed Aug 21 21:22:47 2002
@@ -3,9 +3,10 @@
 # $Id: Makefile,v 1.1 2002/08/14 02:45:10 ishii Exp $
 #
 #-------------------------------------------------------------------------
+subdir = src/backend/utils/mb/conversion_procs/ascii_and_mic
 top_builddir = ../../../../../..
 include $(top_builddir)/src/Makefile.global

NAME := ascii_and_mic

-include ../proc.mk
+include $(srcdir)/../proc.mk
diff -ru cvs-pgsql/src/backend/utils/mb/conversion_procs/proc.mk pgsql/src/backend/utils/mb/conversion_procs/proc.mk
--- cvs-pgsql/src/backend/utils/mb/conversion_procs/proc.mk	Sat Aug 10 00:53:26 2002
+++ pgsql/src/backend/utils/mb/conversion_procs/proc.mk	Wed Aug 21 21:12:29 2002
@@ -16,6 +16,6 @@
 clean distclean maintainer-clean: clean-lib
 	$(RM) $(OBJS)
-include $(top_builddir)/src/Makefile.shlib
+include $(top_srcdir)/src/Makefile.shlib

all: $(shlib)
===end

--
Peter Eisentraut peter_e@gmx.net

#8Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Peter Eisentraut (#7)
Re: Build failure in current CVS

OK, patch applied to all Makefiles, as outlined by Peter.

---------------------------------------------------------------------------

Peter Eisentraut wrote:

Tatsuo Ishii writes:

I have applied following changes and am getting:

make: *** No rule to make target `ascii_and_mic.o', needed by `libascii_and_mic.so.0.0'. Stop.

under one of a conversion directory. The weird thing is I do not get
this if I do a build "inside" the source tree. Any idea?

The following patch works, it just needs to be extrapolated to the other
directories.

diff -ru cvs-pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile
--- cvs-pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile	Wed Aug 14 04:45:10 2002
+++ pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic/Makefile	Wed Aug 21 21:22:47 2002
@@ -3,9 +3,10 @@
# $Id: Makefile,v 1.1 2002/08/14 02:45:10 ishii Exp $
#
#-------------------------------------------------------------------------
+subdir = src/backend/utils/mb/conversion_procs/ascii_and_mic
top_builddir = ../../../../../..
include $(top_builddir)/src/Makefile.global

NAME := ascii_and_mic

-include ../proc.mk
+include $(srcdir)/../proc.mk
diff -ru cvs-pgsql/src/backend/utils/mb/conversion_procs/proc.mk pgsql/src/backend/utils/mb/conversion_procs/proc.mk
--- cvs-pgsql/src/backend/utils/mb/conversion_procs/proc.mk	Sat Aug 10 00:53:26 2002
+++ pgsql/src/backend/utils/mb/conversion_procs/proc.mk	Wed Aug 21 21:12:29 2002
@@ -16,6 +16,6 @@
clean distclean maintainer-clean: clean-lib
$(RM) $(OBJS)
-include $(top_builddir)/src/Makefile.shlib
+include $(top_srcdir)/src/Makefile.shlib

all: $(shlib)
===end

--
Peter Eisentraut peter_e@gmx.net

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#9Neil Conway
neilc@samurai.com
In reply to: Bruce Momjian (#8)
Re: Build failure in current CVS

Bruce Momjian <pgman@candle.pha.pa.us> writes:

OK, patch applied to all Makefiles, as outlined by Peter.

I see this in current CVS:

make[3]: Entering directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs'
make[4]: Entering directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
Makefile:1: *** missing separator. Stop.
make[4]: Leaving directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
make[3]: *** [all] Error 2

Cheers,

Neil

--
Neil Conway <neilc@samurai.com> || PGP Key ID: DB3C29FC

#10Christopher Kings-Lynne
chriskl@familyhealth.com.au
In reply to: Neil Conway (#9)
Re: Build failure in current CVS

I get the same - FreeBSD/Alpha.

Chris

Show quoted text

-----Original Message-----
From: pgsql-hackers-owner@postgresql.org
[mailto:pgsql-hackers-owner@postgresql.org]On Behalf Of Neil Conway
Sent: Thursday, 22 August 2002 7:13 AM
To: Bruce Momjian
Cc: Peter Eisentraut; Tatsuo Ishii; tgl@sss.pgh.pa.us;
jgray@azuli.co.uk; pgsql-hackers@postgresql.org
Subject: Re: [HACKERS] Build failure in current CVS

Bruce Momjian <pgman@candle.pha.pa.us> writes:

OK, patch applied to all Makefiles, as outlined by Peter.

I see this in current CVS:

make[3]: Entering directory
`/home/nconway/pgsql/src/backend/utils/mb/conversion_procs'
make[4]: Entering directory
`/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
Makefile:1: *** missing separator. Stop.
make[4]: Leaving directory
`/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
make[3]: *** [all] Error 2

Cheers,

Neil

--
Neil Conway <neilc@samurai.com> || PGP Key ID: DB3C29FC

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

#11Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Neil Conway (#9)
Re: Build failure in current CVS

Thanks. Fixed. I had a '[' on the first line of one of the makefiles.

---------------------------------------------------------------------------

Neil Conway wrote:

Bruce Momjian <pgman@candle.pha.pa.us> writes:

OK, patch applied to all Makefiles, as outlined by Peter.

I see this in current CVS:

make[3]: Entering directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs'
make[4]: Entering directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
Makefile:1: *** missing separator. Stop.
make[4]: Leaving directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
make[3]: *** [all] Error 2

Cheers,

Neil

--
Neil Conway <neilc@samurai.com> || PGP Key ID: DB3C29FC

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#12Tatsuo Ishii
t-ishii@sra.co.jp
In reply to: Bruce Momjian (#11)
Re: Build failure in current CVS

I appreciate you and other guys who has been working for this
problem.
--
Tatsuo Ishii

Show quoted text

Thanks. Fixed. I had a '[' on the first line of one of the makefiles.

---------------------------------------------------------------------------

Neil Conway wrote:

Bruce Momjian <pgman@candle.pha.pa.us> writes:

OK, patch applied to all Makefiles, as outlined by Peter.

I see this in current CVS:

make[3]: Entering directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs'
make[4]: Entering directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
Makefile:1: *** missing separator. Stop.
make[4]: Leaving directory `/home/nconway/pgsql/src/backend/utils/mb/conversion_procs/ascii_and_mic'
make[3]: *** [all] Error 2

Cheers,

Neil

--
Neil Conway <neilc@samurai.com> || PGP Key ID: DB3C29FC

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

-- 
Bruce Momjian                        |  http://candle.pha.pa.us
pgman@candle.pha.pa.us               |  (610) 359-1001
+  If your life is a hard drive,     |  13 Roberts Road
+  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073