Re: Revert addition of -lpgport, which breaks the build - Mailing list pgsql-committers

From Bruce Momjian
Subject Re: Revert addition of -lpgport, which breaks the build
Date
Msg-id 200405240058.i4O0wRr18722@candle.pha.pa.us
Whole thread Raw
In response to Re: Revert addition of -lpgport, which breaks the build  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-committers
Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Tom Lane wrote:
> >> I think Neil's point is that it fails on OSX as well.  Really we have to
> >> do this the way libpq does, namely pull out the specific files it needs
> >> and recompile those with the correct shared-library-compatible CFLAGS.
>
> > I will make the separate build change when I return on Sunday.
>
> I applied the necessary changes to get OS X to build again.  Does Win32
> need any more port modules besides path.c in ecpglib?

I see that you didn't use $filter() like we do in libpq/Makefile.  I now
remember we have two types of files in libpgport, those that are used
only if the platform needs it, and those that are always in the library,
so they don't need filter.

I have applied the following patch to remove a few unneeded uses of
$filter().

--
  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
Index: src/bin/initdb/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/bin/initdb/Makefile,v
retrieving revision 1.40
diff -c -c -r1.40 Makefile
*** src/bin/initdb/Makefile    19 May 2004 17:15:20 -0000    1.40
--- src/bin/initdb/Makefile    24 May 2004 00:44:41 -0000
***************
*** 15,22 ****

  override CPPFLAGS := -DFRONTEND -I$(libpq_srcdir) $(CPPFLAGS)

! OBJS=    initdb.o \
!     $(filter exec.o, $(LIBOBJS))

  all: submake-libpq submake-libpgport initdb

--- 15,21 ----

  override CPPFLAGS := -DFRONTEND -I$(libpq_srcdir) $(CPPFLAGS)

! OBJS=    initdb.o exec.o

  all: submake-libpq submake-libpgport initdb

Index: src/bin/pg_dump/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/bin/pg_dump/Makefile,v
retrieving revision 1.50
diff -c -c -r1.50 Makefile
*** src/bin/pg_dump/Makefile    22 May 2004 02:14:28 -0000    1.50
--- src/bin/pg_dump/Makefile    24 May 2004 00:44:41 -0000
***************
*** 18,24 ****
  OBJS=    pg_backup_archiver.o pg_backup_db.o pg_backup_custom.o \
      pg_backup_files.o pg_backup_null.o pg_backup_tar.o \
      dumputils.o
! PG_DUMPALL_OBJS = $(filter exec.o, $(LIBOBJS))

  EXTRA_OBJS = $(top_builddir)/src/backend/parser/keywords.o

--- 18,24 ----
  OBJS=    pg_backup_archiver.o pg_backup_db.o pg_backup_custom.o \
      pg_backup_files.o pg_backup_null.o pg_backup_tar.o \
      dumputils.o
! PG_DUMPALL_OBJS = exec.o

  EXTRA_OBJS = $(top_builddir)/src/backend/parser/keywords.o

Index: src/bin/pg_resetxlog/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/bin/pg_resetxlog/Makefile,v
retrieving revision 1.8
diff -c -c -r1.8 Makefile
*** src/bin/pg_resetxlog/Makefile    30 Apr 2004 20:01:39 -0000    1.8
--- src/bin/pg_resetxlog/Makefile    24 May 2004 00:44:41 -0000
***************
*** 14,21 ****

  override CPPFLAGS += -DFRONTEND

! OBJS= pg_resetxlog.o pg_crc.o \
!       $(filter dirmod.o, $(LIBOBJS))

  all: submake-libpgport pg_resetxlog

--- 14,20 ----

  override CPPFLAGS += -DFRONTEND

! OBJS= pg_resetxlog.o pg_crc.o dirmod.o

  all: submake-libpgport pg_resetxlog

Index: src/bin/psql/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/bin/psql/Makefile,v
retrieving revision 1.46
diff -c -c -r1.46 Makefile
*** src/bin/psql/Makefile    19 May 2004 17:15:21 -0000    1.46
--- src/bin/psql/Makefile    24 May 2004 00:44:41 -0000
***************
*** 19,26 ****

  OBJS=    command.o common.o help.o input.o stringutils.o mainloop.o copy.o \
      startup.o prompt.o variables.o large_obj.o print.o describe.o \
!     psqlscan.o tab-complete.o mbprint.o \
!     $(filter exec.o, $(LIBOBJS))

  FLEXFLAGS = -Cfe

--- 19,25 ----

  OBJS=    command.o common.o help.o input.o stringutils.o mainloop.o copy.o \
      startup.o prompt.o variables.o large_obj.o print.o describe.o \
!     psqlscan.o tab-complete.o mbprint.o exec.o

  FLEXFLAGS = -Cfe

Index: src/interfaces/ecpg/pgtypeslib/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/interfaces/ecpg/pgtypeslib/Makefile,v
retrieving revision 1.19
diff -c -c -r1.19 Makefile
*** src/interfaces/ecpg/pgtypeslib/Makefile    7 May 2004 13:42:48 -0000    1.19
--- src/interfaces/ecpg/pgtypeslib/Makefile    24 May 2004 00:44:41 -0000
***************
*** 23,29 ****
  SHLIB_LINK += -lm

  OBJS= numeric.o datetime.o common.o dt_common.o timestamp.o interval.o \
!       $(filter rint.o, $(LIBOBJS)) $(filter pgstrcasecmp.o, $(LIBOBJS))

  all: all-lib

--- 23,30 ----
  SHLIB_LINK += -lm

  OBJS= numeric.o datetime.o common.o dt_common.o timestamp.o interval.o \
!     pgstrcasecmp.o \
!     $(filter rint.o, $(LIBOBJS))

  all: all-lib

Index: src/interfaces/ecpg/preproc/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/interfaces/ecpg/preproc/Makefile,v
retrieving revision 1.106
diff -c -c -r1.106 Makefile
*** src/interfaces/ecpg/preproc/Makefile    19 May 2004 17:15:21 -0000    1.106
--- src/interfaces/ecpg/preproc/Makefile    24 May 2004 00:44:41 -0000
***************
*** 20,26 ****

  OBJS=    preproc.o type.o ecpg.o ecpg_keywords.o output.o\
      keywords.o c_keywords.o ../ecpglib/typename.o descriptor.o variable.o \
!     $(filter exec.o, $(LIBOBJS))

  all: submake-libpgport ecpg

--- 20,26 ----

  OBJS=    preproc.o type.o ecpg.o ecpg_keywords.o output.o\
      keywords.o c_keywords.o ../ecpglib/typename.o descriptor.o variable.o \
!     exec.o

  all: submake-libpgport ecpg

Index: src/interfaces/libpq/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/interfaces/libpq/Makefile,v
retrieving revision 1.108
diff -c -c -r1.108 Makefile
*** src/interfaces/libpq/Makefile    21 May 2004 20:56:49 -0000    1.108
--- src/interfaces/libpq/Makefile    24 May 2004 00:44:42 -0000
***************
*** 23,30 ****

  OBJS=    fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o \
      fe-protocol2.o fe-protocol3.o pqexpbuffer.o pqsignal.o fe-secure.o \
!     dllist.o md5.o ip.o wchar.o encnames.o \
!     $(filter crypt.o getaddrinfo.o inet_aton.o noblock.o pgstrcasecmp.o snprintf.o strerror.o open.o thread.o,
$(LIBOBJS))
  ifeq ($(PORTNAME), win32)
  OBJS+=win32.o
  endif
--- 23,30 ----

  OBJS=    fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o \
      fe-protocol2.o fe-protocol3.o pqexpbuffer.o pqsignal.o fe-secure.o \
!     dllist.o md5.o ip.o wchar.o encnames.o noblock.o pgstrcasecmp.o thread.o \
!     $(filter crypt.o getaddrinfo.o inet_aton.o open.o snprintf.o strerror.o, $(LIBOBJS))
  ifeq ($(PORTNAME), win32)
  OBJS+=win32.o
  endif

pgsql-committers by date:

Previous
From: tgl@svr1.postgresql.org (Tom Lane)
Date:
Subject: pgsql-server: Seems we had the wrong sign convention for the default
Next
From: momjian@svr1.postgresql.org (Bruce Momjian)
Date:
Subject: pgsql-server: Remove a few $filter() calls that were not needed.