Dave Page wrote:
> Hi,
> 
> I tried building a static libpq with Mingw, which it seems doesn't work
> any more:
> 
> make[3]: *** No rule to make target `libpq.a', needed by
> `all-static-lib'.  Stop.
> make[3]: Leaving directory `/cvs/pgsql/src/interfaces/libpq'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/cvs/pgsql/src/interfaces'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/cvs/pgsql/src'
> make: *** [all] Error 2
> 
> I can work around this easily enough, however it should obviously get
> fixed at some point.

I got it working easily by doing 'gmake all-static-lib' from the
src/interfaces/libpq directory.  Is it supposed to work somewhere else?

The attached patch adds some pg_config_paths.h dependencies that are
missing.  I am now wondering if we should have that file generated by
configure, but that defeats the ability to modify Makefile.global to
change settings so I guess we are stuck with what we have currently.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
Index: src/Makefile.shlib
===================================================================
RCS file: /cvsroot/pgsql/src/Makefile.shlib,v
retrieving revision 1.79
diff -c -c -r1.79 Makefile.shlib
*** src/Makefile.shlib  8 Oct 2004 04:22:59 -0000       1.79
--- src/Makefile.shlib  12 Oct 2004 00:56:46 -0000
***************
*** 245,253 ****
  
  all-lib: all-static-lib all-shared-lib
  
! all-static-lib: lib$(NAME).a
  
! all-shared-lib: $(shlib)
  
  ifneq ($(PORTNAME), cygwin)
  ifneq ($(PORTNAME), win32)
--- 245,253 ----
  
  all-lib: all-static-lib all-shared-lib
  
! all-static-lib: $(PTHREAD_H_WIN32) $(top_srcdir)/src/port/pg_config_paths.h 
lib$(NAME).a
  
! all-shared-lib: $(PTHREAD_H_WIN32) $(top_srcdir)/src/port/pg_config_paths.h $(shlib)
  
  ifneq ($(PORTNAME), cygwin)
  ifneq ($(PORTNAME), win32)
Index: src/interfaces/ecpg/ecpglib/Makefile
===================================================================
RCS file: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/Makefile,v
retrieving revision 1.26
diff -c -c -r1.26 Makefile
*** src/interfaces/ecpg/ecpglib/Makefile        4 Oct 2004 20:36:11 -0000       1.26
--- src/interfaces/ecpg/ecpglib/Makefile        12 Oct 2004 00:56:54 -0000
***************
*** 30,36 ****
  SHLIB_LINK = -L../pgtypeslib -lpgtypes $(libpq) \
        $(filter -lintl -lssl -lcrypto -lkrb5 -lcrypt -lm, $(LIBS)) $(PTHREAD_LIBS)
  
! all: all-lib
  
  # Shared library stuff
  include $(top_srcdir)/src/Makefile.shlib
--- 30,36 ----
  SHLIB_LINK = -L../pgtypeslib -lpgtypes $(libpq) \
        $(filter -lintl -lssl -lcrypto -lkrb5 -lcrypt -lm, $(LIBS)) $(PTHREAD_LIBS)
  
! all: $(top_srcdir)/src/port/pg_config_paths.h all-lib
  
  # Shared library stuff
  include $(top_srcdir)/src/Makefile.shlib
***************
*** 46,51 ****
--- 46,54 ----
  exec.c: % : $(top_srcdir)/src/port/%
        rm -f $@ && $(LN_S) $< .
  
+ $(top_srcdir)/src/port/pg_config_paths.h:
+       $(MAKE) -C $(top_srcdir)/src/port pg_config_paths.h
+ 
  install: all installdirs install-lib
  
  installdirs:
Index: src/interfaces/libpq/Makefile
===================================================================
RCS file: /cvsroot/pgsql/src/interfaces/libpq/Makefile,v
retrieving revision 1.115
diff -c -c -r1.115 Makefile
*** src/interfaces/libpq/Makefile       6 Oct 2004 16:42:01 -0000       1.115
--- src/interfaces/libpq/Makefile       12 Oct 2004 00:56:54 -0000
***************
*** 31,43 ****
        $(filter crypt.o getaddrinfo.o inet_aton.o open.o snprintf.o strerror.o, 
$(LIBOBJS))
  
  ifeq ($(PORTNAME), win32)
! OBJS+=win32.o libpqrc.o
! libpqrc.o: libpq.rc
        windres -i libpq.rc -o libpqrc.o
  ifeq ($(enable_thread_safety), yes)
  # This doesn't work yet because configure test fails.  2004-06-19
! OBJS+=pthread-win32.o
! PTHREAD_H_WIN32=yes
  endif
  endif
  
--- 31,43 ----
        $(filter crypt.o getaddrinfo.o inet_aton.o open.o snprintf.o strerror.o, 
$(LIBOBJS))
  
  ifeq ($(PORTNAME), win32)
! OBJS += win32.o libpqrc.o
! libpqrc.o : libpq.rc
        windres -i libpq.rc -o libpqrc.o
  ifeq ($(enable_thread_safety), yes)
  # This doesn't work yet because configure test fails.  2004-06-19
! OBJS += pthread-win32.o
! PTHREAD_H_WIN32 = yes
  endif
  endif
  
***************
*** 51,57 ****
  endif
  
  
! all: $(PTHREAD_H_WIN32) all-lib
  
  # Shared library stuff
  include $(top_srcdir)/src/Makefile.shlib
--- 51,57 ----
  endif
  
  
! all: $(PTHREAD_H_WIN32) $(top_srcdir)/src/port/pg_config_paths.h all-lib
  
  # Shared library stuff
  include $(top_srcdir)/src/Makefile.shlib
***************
*** 83,88 ****
--- 83,91 ----
        rm -f $@ && $(LN_S) $< .
  endif
  
+ $(top_srcdir)/src/port/pg_config_paths.h:
+       $(MAKE) -C $(top_srcdir)/src/port pg_config_paths.h
+ 
  install: all installdirs install-lib
        $(INSTALL_DATA) $(srcdir)/libpq-fe.h $(DESTDIR)$(includedir)
        $(INSTALL_DATA) $(srcdir)/libpq-int.h $(DESTDIR)$(includedir_internal)
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
      joining column's datatypes do not match

Reply via email to