Re-include pqsignal() in libpq.

We need this in non-ENABLE_THREAD_SAFETY builds, and also to satisfy
the exports.txt entry; while it might be a good idea to remove the
latter, I'm hesitant to do so except in the context of an intentional
ABI break.  At least we don't have a separately maintained source file
for it anymore.
This commit is contained in:
Tom Lane 2013-03-17 15:45:31 -04:00
parent e2a203a190
commit b1fae823ee
4 changed files with 23 additions and 7 deletions

View File

@ -8,6 +8,7 @@
/noblock.c /noblock.c
/open.c /open.c
/pgstrcasecmp.c /pgstrcasecmp.c
/pqsignal.c
/snprintf.c /snprintf.c
/strerror.c /strerror.c
/strlcpy.c /strlcpy.c

View File

@ -35,7 +35,8 @@ 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 fe-secure.o \ fe-protocol2.o fe-protocol3.o pqexpbuffer.o fe-secure.o \
libpq-events.o libpq-events.o
# libpgport C files we always use # libpgport C files we always use
OBJS += chklocale.o inet_net_ntop.o noblock.o pgstrcasecmp.o thread.o OBJS += chklocale.o inet_net_ntop.o noblock.o pgstrcasecmp.o pqsignal.o \
thread.o
# libpgport C files that are needed if identified by configure # libpgport C files that are needed if identified by configure
OBJS += $(filter crypt.o getaddrinfo.o getpeereid.o inet_aton.o open.o snprintf.o strerror.o strlcpy.o win32error.o win32setlocale.o, $(LIBOBJS)) OBJS += $(filter crypt.o getaddrinfo.o getpeereid.o inet_aton.o open.o snprintf.o strerror.o strlcpy.o win32error.o win32setlocale.o, $(LIBOBJS))
# backend/libpq # backend/libpq
@ -81,14 +82,14 @@ include $(top_srcdir)/src/Makefile.shlib
backend_src = $(top_srcdir)/src/backend backend_src = $(top_srcdir)/src/backend
# We use several backend modules verbatim, but since we need to # We use several libpgport and backend modules verbatim, but since we need
# compile with appropriate options to build a shared lib, we can't # to compile with appropriate options to build a shared lib, we can't
# necessarily use the same object files as the backend uses. Instead, # necessarily use the same object files built for libpgport and the backend.
# symlink the source files in here and build our own object file. # Instead, symlink the source files in here and build our own object files.
# For some libpgport modules, this only happens if configure decides # For some libpgport modules, this only happens if configure decides
# the module is needed (see filter hack in OBJS, above). # the module is needed (see filter hack in OBJS, above).
chklocale.c crypt.c getaddrinfo.c getpeereid.c inet_aton.c inet_net_ntop.c noblock.c open.c pgsleep.c pgstrcasecmp.c snprintf.c strerror.c strlcpy.c thread.c win32error.c win32setlocale.c: % : $(top_srcdir)/src/port/% chklocale.c crypt.c getaddrinfo.c getpeereid.c inet_aton.c inet_net_ntop.c noblock.c open.c pgsleep.c pgstrcasecmp.c pqsignal.c snprintf.c strerror.c strlcpy.c thread.c win32error.c win32setlocale.c: % : $(top_srcdir)/src/port/%
rm -f $@ && $(LN_S) $< . rm -f $@ && $(LN_S) $< .
ip.c md5.c: % : $(backend_src)/libpq/% ip.c md5.c: % : $(backend_src)/libpq/%
@ -139,7 +140,7 @@ clean distclean: clean-lib
rm -f $(OBJS) pthread.h libpq.rc rm -f $(OBJS) pthread.h libpq.rc
# Might be left over from a Win32 client-only build # Might be left over from a Win32 client-only build
rm -f pg_config_paths.h rm -f pg_config_paths.h
rm -f inet_net_ntop.c noblock.c pgstrcasecmp.c thread.c rm -f inet_net_ntop.c noblock.c pgstrcasecmp.c pqsignal.c thread.c
rm -f chklocale.c crypt.c getaddrinfo.c getpeereid.c inet_aton.c open.c snprintf.c strerror.c strlcpy.c win32error.c win32setlocale.c rm -f chklocale.c crypt.c getaddrinfo.c getpeereid.c inet_aton.c open.c snprintf.c strerror.c strlcpy.c win32error.c win32setlocale.c
rm -f pgsleep.c rm -f pgsleep.c
rm -f md5.c ip.c rm -f md5.c ip.c

View File

@ -76,6 +76,7 @@ ALL : config "$(OUTDIR)" "$(OUTDIR)\blibpq.dll" "$(OUTDIR)\blibpq.lib"
CLEAN : CLEAN :
-@erase "$(INTDIR)\getaddrinfo.obj" -@erase "$(INTDIR)\getaddrinfo.obj"
-@erase "$(INTDIR)\pgstrcasecmp.obj" -@erase "$(INTDIR)\pgstrcasecmp.obj"
-@erase "$(INTDIR)\pqsignal.obj"
-@erase "$(INTDIR)\thread.obj" -@erase "$(INTDIR)\thread.obj"
-@erase "$(INTDIR)\inet_aton.obj" -@erase "$(INTDIR)\inet_aton.obj"
-@erase "$(INTDIR)\crypt.obj" -@erase "$(INTDIR)\crypt.obj"
@ -120,6 +121,7 @@ LIB32_OBJS= \
"$(INTDIR)\win32.obj" \ "$(INTDIR)\win32.obj" \
"$(INTDIR)\getaddrinfo.obj" \ "$(INTDIR)\getaddrinfo.obj" \
"$(INTDIR)\pgstrcasecmp.obj" \ "$(INTDIR)\pgstrcasecmp.obj" \
"$(INTDIR)\pqsignal.obj" \
"$(INTDIR)\thread.obj" \ "$(INTDIR)\thread.obj" \
"$(INTDIR)\inet_aton.obj" \ "$(INTDIR)\inet_aton.obj" \
"$(INTDIR)\crypt.obj" \ "$(INTDIR)\crypt.obj" \
@ -207,6 +209,11 @@ LINK32_FLAGS = -Gn -L$(BCB)\lib;$(INTDIR); -x -Tpd -v
$(CPP_PROJ) ..\..\port\pgstrcasecmp.c $(CPP_PROJ) ..\..\port\pgstrcasecmp.c
<< <<
"$(INTDIR)\pqsignal.obj" : ..\..\port\pqsignal.c
$(CPP) @<<
$(CPP_PROJ) ..\..\port\pqsignal.c
<<
"$(INTDIR)\thread.obj" : ..\..\port\thread.c "$(INTDIR)\thread.obj" : ..\..\port\thread.c
$(CPP) @<< $(CPP) @<<
$(CPP_PROJ) ..\..\port\thread.c $(CPP_PROJ) ..\..\port\thread.c

View File

@ -83,6 +83,7 @@ ALL : config "$(OUTDIR)\$(OUTFILENAME).lib" "$(OUTDIR)\$(OUTFILENAME).dll"
CLEAN : CLEAN :
-@erase "$(INTDIR)\getaddrinfo.obj" -@erase "$(INTDIR)\getaddrinfo.obj"
-@erase "$(INTDIR)\pgstrcasecmp.obj" -@erase "$(INTDIR)\pgstrcasecmp.obj"
-@erase "$(INTDIR)\pqsignal.obj"
-@erase "$(INTDIR)\thread.obj" -@erase "$(INTDIR)\thread.obj"
-@erase "$(INTDIR)\inet_aton.obj" -@erase "$(INTDIR)\inet_aton.obj"
-@erase "$(INTDIR)\crypt.obj" -@erase "$(INTDIR)\crypt.obj"
@ -130,6 +131,7 @@ LIB32_OBJS= \
"$(INTDIR)\win32.obj" \ "$(INTDIR)\win32.obj" \
"$(INTDIR)\getaddrinfo.obj" \ "$(INTDIR)\getaddrinfo.obj" \
"$(INTDIR)\pgstrcasecmp.obj" \ "$(INTDIR)\pgstrcasecmp.obj" \
"$(INTDIR)\pqsignal.obj" \
"$(INTDIR)\thread.obj" \ "$(INTDIR)\thread.obj" \
"$(INTDIR)\inet_aton.obj" \ "$(INTDIR)\inet_aton.obj" \
"$(INTDIR)\crypt.obj" \ "$(INTDIR)\crypt.obj" \
@ -247,6 +249,11 @@ LINK32_OBJS= \
$(CPP_PROJ) ..\..\port\pgstrcasecmp.c $(CPP_PROJ) ..\..\port\pgstrcasecmp.c
<< <<
"$(INTDIR)\pqsignal.obj" : ..\..\port\pqsignal.c
$(CPP) @<<
$(CPP_PROJ) ..\..\port\pqsignal.c
<<
"$(INTDIR)\thread.obj" : ..\..\port\thread.c "$(INTDIR)\thread.obj" : ..\..\port\thread.c
$(CPP) @<< $(CPP) @<<
$(CPP_PROJ) ..\..\port\thread.c $(CPP_PROJ) ..\..\port\thread.c