Merge lp:~brianaker/drizzle/autoconf-foo-update into lp:~drizzle-trunk/drizzle/development

Proposed by Brian Aker
Status: Merged
Approved by: Brian Aker
Approved revision: 2498
Merged at revision: 2499
Proposed branch: lp:~brianaker/drizzle/autoconf-foo-update
Merge into: lp:~drizzle-trunk/drizzle/development
Diff against target: 605 lines (+205/-178)
10 files modified
bootstrap.sh (+0/-26)
client/drizzle.cc (+20/-4)
config/autorun.sh (+1/-1)
drizzled/drizzled.cc (+1/-1)
libdrizzle-1.0/structs.h (+2/-3)
libdrizzle/conn.cc (+137/-93)
libdrizzle/conn_uds.cc (+12/-14)
libdrizzle/drizzle.cc (+1/-1)
m4/pkg.m4 (+30/-33)
win32/include.am (+1/-2)
To merge this branch: bzr merge lp:~brianaker/drizzle/autoconf-foo-update
Reviewer Review Type Date Requested Status
Drizzle Merge Team Pending
Review via email: mp+90599@code.launchpad.net
To post a comment you must log in.
2499. By Brian Aker

Fix NI_SERV

2500. By Brian Aker

Fix unix domain socket to not require that we keep the addr structure sitting around.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'bootstrap.sh'
2--- bootstrap.sh 2011-12-14 20:53:40 +0000
3+++ bootstrap.sh 2012-01-30 06:09:24 +0000
4@@ -1,31 +1,5 @@
5 #!/bin/bash
6
7-# Copyright (C) 2011 Brian Aker
8-# All rights reserved.
9-#
10-# Redistribution and use in source and binary forms, with or without
11-# modification, are permitted provided that the following conditions are met:
12-#
13-# 1. Redistributions of source code must retain the above copyright
14-# notice, this list of conditions and the following disclaimer.
15-# 2. Redistributions in binary form must reproduce the above copyright
16-# notice, this list of conditions and the following disclaimer in the
17-# documentation and/or other materials provided with the distribution.
18-# 3. The name of the author may not be used to endorse or promote products
19-# derived from this software without specific prior written permission.
20-#
21-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
25-# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26-# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
27-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28-# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29-# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30-# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31-# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32-
33 if test -f configure; then make clean; make merge-clean; make distclean; fi;
34
35 rm -r -f autom4te.cache
36
37=== modified file 'client/drizzle.cc'
38--- client/drizzle.cc 2011-11-26 23:14:59 +0000
39+++ client/drizzle.cc 2012-01-30 06:09:24 +0000
40@@ -324,6 +324,8 @@
41 opt_password,
42 opt_protocol;
43
44+static std::string socket_file;
45+
46 static const char* get_day_name(int day_of_week)
47 {
48 switch(day_of_week)
49@@ -1476,6 +1478,8 @@
50 ("host,h", po::value<string>(&current_host)->default_value("localhost"),
51 _("Connect to host"))
52 ("password,P", po::value<string>(&current_password)->default_value(PASSWORD_SENTINEL),
53+ _("Socket file to use when connecting to server."))
54+ ("socket", po::value<string>(&socket_file),
55 _("Password to use when connecting to server. If password is not given it's asked from the tty."))
56 ("port,p", po::value<uint32_t>()->default_value(0),
57 _("Port number to use for connection or 0 for default to, in order of preference, drizzle.cnf, $DRIZZLE_TCP_PORT, built-in default"))
58@@ -4199,10 +4203,22 @@
59 return 1;
60 }
61
62- if ((con= drizzle_con_add_tcp(drizzle, host.c_str(),
63- opt_drizzle_port, user.c_str(),
64- password.c_str(), database.c_str(),
65- global_con_options)) == NULL)
66+ if (socket_file.size())
67+ {
68+ if ((con= drizzle_con_add_uds(drizzle, socket_file.c_str(),
69+ user.c_str(), password.c_str(),
70+ database.c_str(),
71+ global_con_options)) == NULL)
72+ {
73+ (void) put_error(con, NULL);
74+ (void) fflush(stdout);
75+ return 1;
76+ }
77+ }
78+ else if ((con= drizzle_con_add_tcp(drizzle, host.c_str(),
79+ opt_drizzle_port, user.c_str(),
80+ password.c_str(), database.c_str(),
81+ global_con_options)) == NULL)
82 {
83 (void) put_error(con, NULL);
84 (void) fflush(stdout);
85
86=== modified file 'config/autorun.sh'
87--- config/autorun.sh 2011-08-09 05:28:47 +0000
88+++ config/autorun.sh 2012-01-30 06:09:24 +0000
89@@ -25,4 +25,4 @@
90 # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
91 # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
92
93-autoreconf -ivf
94+autoreconf --install --force --verbose -Wall
95
96=== modified file 'drizzled/drizzled.cc'
97--- drizzled/drizzled.cc 2012-01-06 18:52:56 +0000
98+++ drizzled/drizzled.cc 2012-01-30 06:09:24 +0000
99@@ -1366,7 +1366,7 @@
100 }
101 catch (po::unknown_option &err)
102 {
103- unireg_abort << "Use --help to get a list of available options. " << err.what();
104+ unireg_abort << "Use --help to get a list of available options. " << err.what();
105 }
106
107 try
108
109=== modified file 'libdrizzle-1.0/structs.h'
110--- libdrizzle-1.0/structs.h 2011-12-28 23:32:47 +0000
111+++ libdrizzle-1.0/structs.h 2012-01-30 06:09:24 +0000
112@@ -94,7 +94,7 @@
113 in_port_t port;
114 struct addrinfo *addrinfo;
115 char *host;
116- char host_buffer[NI_MAXHOST];
117+ char host_buffer[LIBDRIZZLE_NI_MAXHOST];
118 };
119
120 /**
121@@ -102,8 +102,7 @@
122 */
123 struct drizzle_con_uds_st
124 {
125- struct addrinfo addrinfo;
126- struct sockaddr_un sockaddr;
127+ char path_buffer[LIBDRIZZLE_NI_MAXHOST];
128 };
129
130 /**
131
132=== modified file 'libdrizzle/conn.cc'
133--- libdrizzle/conn.cc 2012-01-05 06:31:25 +0000
134+++ libdrizzle/conn.cc 2012-01-30 06:09:24 +0000
135@@ -1062,7 +1062,7 @@
136 break;
137
138 case DRIZZLE_CON_SOCKET_UDS:
139- con->socket.uds.addrinfo.ai_addr= NULL;
140+ con->socket.uds.path_buffer[0]= 0;
141 break;
142
143 default:
144@@ -1150,7 +1150,6 @@
145 break;
146
147 case DRIZZLE_CON_SOCKET_UDS:
148- con->addrinfo_next= &(con->socket.uds.addrinfo);
149 break;
150
151 default:
152@@ -1179,102 +1178,147 @@
153 con->fd= -1;
154 }
155
156- if (con->addrinfo_next == NULL)
157- {
158- drizzle_set_error(con->drizzle, __func__, "could not connect");
159- drizzle_state_reset(con);
160- return DRIZZLE_RETURN_COULD_NOT_CONNECT;
161- }
162-
163- con->fd= socket(con->addrinfo_next->ai_family,
164- con->addrinfo_next->ai_socktype,
165- con->addrinfo_next->ai_protocol);
166- if (con->fd == -1)
167- {
168- drizzle_set_error(con->drizzle, __func__, "socket:%s", strerror(errno));
169- con->drizzle->last_errno= errno;
170- return DRIZZLE_RETURN_COULD_NOT_CONNECT;
171- }
172-
173- dret= _con_setsockopt(con);
174- if (dret != DRIZZLE_RETURN_OK)
175- {
176- con->drizzle->last_errno= errno;
177- return DRIZZLE_RETURN_COULD_NOT_CONNECT;
178- }
179-
180- while (1)
181- {
182- ret= connect(con->fd, con->addrinfo_next->ai_addr,
183- con->addrinfo_next->ai_addrlen);
184+ if (con->socket_type == DRIZZLE_CON_SOCKET_UDS)
185+ {
186+#ifndef WIN32
187+ if ((con->fd= socket(AF_UNIX, SOCK_STREAM, 0)) < 0)
188+ {
189+ con->drizzle->last_errno= errno;
190+ return DRIZZLE_RETURN_COULD_NOT_CONNECT;
191+ }
192+
193+ struct sockaddr_un servAddr;
194+
195+ memset(&servAddr, 0, sizeof (struct sockaddr_un));
196+ servAddr.sun_family= AF_UNIX;
197+ strncpy(servAddr.sun_path, con->socket.uds.path_buffer, sizeof(servAddr.sun_path)); /* Copy filename */
198+
199+ do {
200+ if (connect(con->fd, (struct sockaddr *)&servAddr, sizeof(servAddr)) < 0)
201+ {
202+ switch (errno)
203+ {
204+ case EINPROGRESS:
205+ case EALREADY:
206+ case EINTR:
207+ continue;
208+
209+ case EISCONN: /* We were spinning waiting on connect */
210+ {
211+ break;
212+ }
213+
214+ default:
215+ con->drizzle->last_errno= errno;
216+ return DRIZZLE_RETURN_COULD_NOT_CONNECT;
217+ }
218+ }
219+ } while (0);
220+
221+ return DRIZZLE_RETURN_OK;
222+#else
223+ return DRIZZLE_RETURN_COULD_NOT_CONNECT;
224+#endif
225+ }
226+ else
227+ {
228+ if (con->addrinfo_next == NULL)
229+ {
230+ drizzle_set_error(con->drizzle, __func__, "could not connect");
231+ drizzle_state_reset(con);
232+ return DRIZZLE_RETURN_COULD_NOT_CONNECT;
233+ }
234+
235+ con->fd= socket(con->addrinfo_next->ai_family,
236+ con->addrinfo_next->ai_socktype,
237+ con->addrinfo_next->ai_protocol);
238+ if (con->fd == -1)
239+ {
240+ drizzle_set_error(con->drizzle, __func__, "socket:%s", strerror(errno));
241+ con->drizzle->last_errno= errno;
242+ return DRIZZLE_RETURN_COULD_NOT_CONNECT;
243+ }
244+
245+ dret= _con_setsockopt(con);
246+ if (dret != DRIZZLE_RETURN_OK)
247+ {
248+ con->drizzle->last_errno= errno;
249+ return DRIZZLE_RETURN_COULD_NOT_CONNECT;
250+ }
251+
252+ while (1)
253+ {
254+ ret= connect(con->fd, con->addrinfo_next->ai_addr,
255+ con->addrinfo_next->ai_addrlen);
256
257 #ifdef _WIN32
258- errno = WSAGetLastError();
259- switch(errno) {
260- case WSAEINVAL:
261- case WSAEALREADY:
262- case WSAEWOULDBLOCK:
263- errno= EINPROGRESS;
264- break;
265- case WSAECONNREFUSED:
266- errno= ECONNREFUSED;
267- break;
268- case WSAENETUNREACH:
269- errno= ENETUNREACH;
270- break;
271- case WSAETIMEDOUT:
272- errno= ETIMEDOUT;
273- break;
274- case WSAECONNRESET:
275- errno= ECONNRESET;
276- break;
277- case WSAEADDRINUSE:
278- errno= EADDRINUSE;
279- break;
280- case WSAEOPNOTSUPP:
281- errno= EOPNOTSUPP;
282- break;
283- case WSAENOPROTOOPT:
284- errno= ENOPROTOOPT;
285- break;
286- default:
287- break;
288- }
289+ errno = WSAGetLastError();
290+ switch(errno) {
291+ case WSAEINVAL:
292+ case WSAEALREADY:
293+ case WSAEWOULDBLOCK:
294+ errno= EINPROGRESS;
295+ break;
296+ case WSAECONNREFUSED:
297+ errno= ECONNREFUSED;
298+ break;
299+ case WSAENETUNREACH:
300+ errno= ENETUNREACH;
301+ break;
302+ case WSAETIMEDOUT:
303+ errno= ETIMEDOUT;
304+ break;
305+ case WSAECONNRESET:
306+ errno= ECONNRESET;
307+ break;
308+ case WSAEADDRINUSE:
309+ errno= EADDRINUSE;
310+ break;
311+ case WSAEOPNOTSUPP:
312+ errno= EOPNOTSUPP;
313+ break;
314+ case WSAENOPROTOOPT:
315+ errno= ENOPROTOOPT;
316+ break;
317+ default:
318+ break;
319+ }
320 #endif /* _WIN32 */
321-
322- drizzle_log_crazy(con->drizzle, "connect return=%d errno=%s", ret, strerror(errno));
323-
324- if (ret == 0)
325- {
326- con->addrinfo_next= NULL;
327- break;
328- }
329-
330- if (errno == EAGAIN || errno == EINTR)
331- {
332- continue;
333- }
334-
335- if (errno == EINPROGRESS)
336- {
337- drizzle_state_pop(con);
338- drizzle_state_push(con, drizzle_state_connecting);
339- return DRIZZLE_RETURN_OK;
340- }
341-
342- if (errno == ECONNREFUSED || errno == ENETUNREACH || errno == ETIMEDOUT)
343- {
344- con->addrinfo_next= con->addrinfo_next->ai_next;
345- return DRIZZLE_RETURN_OK;
346- }
347-
348- drizzle_set_error(con->drizzle, __func__, "connect:%s", strerror(errno));
349- con->drizzle->last_errno= errno;
350- return DRIZZLE_RETURN_COULD_NOT_CONNECT;
351+
352+ drizzle_log_crazy(con->drizzle, "connect return=%d errno=%s", ret, strerror(errno));
353+
354+ if (ret == 0)
355+ {
356+ con->addrinfo_next= NULL;
357+ break;
358+ }
359+
360+ if (errno == EAGAIN || errno == EINTR)
361+ {
362+ continue;
363+ }
364+
365+ if (errno == EINPROGRESS)
366+ {
367+ drizzle_state_pop(con);
368+ drizzle_state_push(con, drizzle_state_connecting);
369+ return DRIZZLE_RETURN_OK;
370+ }
371+
372+ if (errno == ECONNREFUSED || errno == ENETUNREACH || errno == ETIMEDOUT)
373+ {
374+ con->addrinfo_next= con->addrinfo_next->ai_next;
375+ return DRIZZLE_RETURN_OK;
376+ }
377+
378+ drizzle_set_error(con->drizzle, __func__, "connect:%s", strerror(errno));
379+ con->drizzle->last_errno= errno;
380+ return DRIZZLE_RETURN_COULD_NOT_CONNECT;
381+ }
382+
383+ drizzle_state_pop(con);
384 }
385
386- drizzle_state_pop(con);
387-
388 return DRIZZLE_RETURN_OK;
389 }
390
391
392=== modified file 'libdrizzle/conn_uds.cc'
393--- libdrizzle/conn_uds.cc 2011-12-28 21:59:11 +0000
394+++ libdrizzle/conn_uds.cc 2012-01-30 06:09:24 +0000
395@@ -51,11 +51,15 @@
396
397 if (con->socket_type == DRIZZLE_CON_SOCKET_UDS)
398 {
399- if (con->socket.uds.sockaddr.sun_path[0] != 0)
400- return con->socket.uds.sockaddr.sun_path;
401+ if (con->socket.uds.path_buffer[0] != 0)
402+ {
403+ return con->socket.uds.path_buffer;
404+ }
405
406 if (con->options & DRIZZLE_CON_MYSQL)
407+ {
408 return DRIZZLE_DEFAULT_UDS_MYSQL;
409+ }
410
411 return DRIZZLE_DEFAULT_UDS;
412 }
413@@ -77,16 +81,10 @@
414 if (uds == NULL)
415 {
416 uds= "";
417- }
418-
419- con->socket.uds.sockaddr.sun_family= AF_UNIX;
420- strncpy(con->socket.uds.sockaddr.sun_path, uds,
421- sizeof(con->socket.uds.sockaddr.sun_path));
422- con->socket.uds.sockaddr.sun_path[sizeof(con->socket.uds.sockaddr.sun_path) - 1]= 0;
423-
424- con->socket.uds.addrinfo.ai_family= AF_UNIX;
425- con->socket.uds.addrinfo.ai_socktype= SOCK_STREAM;
426- con->socket.uds.addrinfo.ai_protocol= 0;
427- con->socket.uds.addrinfo.ai_addrlen= sizeof(struct sockaddr_un);
428- con->socket.uds.addrinfo.ai_addr= (struct sockaddr *)&(con->socket.uds.sockaddr);
429+ con->socket.uds.path_buffer[0]= 0;
430+ }
431+ else
432+ {
433+ strncpy(con->socket.uds.path_buffer, uds, sizeof(con->socket.uds.path_buffer));
434+ }
435 }
436
437=== modified file 'libdrizzle/drizzle.cc'
438--- libdrizzle/drizzle.cc 2012-01-05 06:31:25 +0000
439+++ libdrizzle/drizzle.cc 2012-01-30 06:09:24 +0000
440@@ -492,7 +492,7 @@
441 break;
442
443 case DRIZZLE_CON_SOCKET_UDS:
444- drizzle_con_set_uds(con, from->socket.uds.sockaddr.sun_path);
445+ drizzle_con_set_uds(con, from->socket.uds.path_buffer);
446 break;
447
448 default:
449
450=== modified file 'm4/pkg.m4'
451--- m4/pkg.m4 2010-11-17 22:14:45 +0000
452+++ m4/pkg.m4 2012-01-30 06:09:24 +0000
453@@ -1,4 +1,5 @@
454 # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
455+# serial 1 (pkg-config-0.24)
456 #
457 # Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
458 #
459@@ -14,7 +15,7 @@
460 #
461 # You should have received a copy of the GNU General Public License
462 # along with this program; if not, write to the Free Software
463-# Foundation, Inc., 51 Franklin Place - Suite 330, Boston, MA 02110-1301, USA.
464+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
465 #
466 # As a special exception to the GNU General Public License, if you
467 # distribute this file as part of a program that contains a
468@@ -26,7 +27,10 @@
469 AC_DEFUN([PKG_PROG_PKG_CONFIG],
470 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
471 m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
472-AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
473+AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
474+AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
475+AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
476+
477 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
478 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
479 fi
480@@ -39,7 +43,6 @@
481 AC_MSG_RESULT([no])
482 PKG_CONFIG=""
483 fi
484-
485 fi[]dnl
486 ])# PKG_PROG_PKG_CONFIG
487
488@@ -48,37 +51,31 @@
489 # Check to see whether a particular set of modules exists. Similar
490 # to PKG_CHECK_MODULES(), but does not set variables or print errors.
491 #
492-#
493-# Similar to PKG_CHECK_MODULES, make sure that the first instance of
494-# this or PKG_CHECK_MODULES is called, or make sure to call
495-# PKG_CHECK_EXISTS manually
496+# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
497+# only at the first occurence in configure.ac, so if the first place
498+# it's called might be skipped (such as if it is within an "if", you
499+# have to call PKG_CHECK_EXISTS manually
500 # --------------------------------------------------------------
501 AC_DEFUN([PKG_CHECK_EXISTS],
502 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
503 if test -n "$PKG_CONFIG" && \
504 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
505- m4_ifval([$2], [$2], [:])
506+ m4_default([$2], [:])
507 m4_ifvaln([$3], [else
508 $3])dnl
509 fi])
510
511-
512 # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
513 # ---------------------------------------------
514 m4_define([_PKG_CONFIG],
515-[if test -n "$PKG_CONFIG"; then
516- if test -n "$$1"; then
517- pkg_cv_[]$1="$$1"
518- else
519- PKG_CHECK_EXISTS([$3],
520- [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null | sed 's/-I/-isystem/g' `],
521- [pkg_failed=yes])
522- if test "$GCC" = "yes"; then
523- pkg_cv_[]$1=`echo $pkg_cv_[]$1 | sed 's/-I/-isystem/g' `
524- fi
525- fi
526-else
527- pkg_failed=untried
528+[if test -n "$$1"; then
529+ pkg_cv_[]$1="$$1"
530+ elif test -n "$PKG_CONFIG"; then
531+ PKG_CHECK_EXISTS([$3],
532+ [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
533+ [pkg_failed=yes])
534+ else
535+ pkg_failed=untried
536 fi[]dnl
537 ])# _PKG_CONFIG
538
539@@ -120,16 +117,17 @@
540 See the pkg-config man page for more details.])
541
542 if test $pkg_failed = yes; then
543+ AC_MSG_RESULT([no])
544 _PKG_SHORT_ERRORS_SUPPORTED
545 if test $_pkg_short_errors_supported = yes; then
546- $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
547+ $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
548 else
549- $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
550+ $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1`
551 fi
552 # Put the nasty error message in config.log where it belongs
553 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
554
555- ifelse([$4], , [AC_MSG_ERROR(dnl
556+ m4_default([$4], [AC_MSG_ERROR(
557 [Package requirements ($2) were not met:
558
559 $$1_PKG_ERRORS
560@@ -137,24 +135,23 @@
561 Consider adjusting the PKG_CONFIG_PATH environment variable if you
562 installed software in a non-standard prefix.
563
564-_PKG_TEXT
565-])],
566- [AC_MSG_RESULT([no])
567- $4])
568+_PKG_TEXT])
569+ ])
570 elif test $pkg_failed = untried; then
571- ifelse([$4], , [AC_MSG_FAILURE(dnl
572+ AC_MSG_RESULT([no])
573+ m4_default([$4], [AC_MSG_FAILURE(
574 [The pkg-config script could not be found or is too old. Make sure it
575 is in your PATH or set the PKG_CONFIG environment variable to the full
576 path to pkg-config.
577
578 _PKG_TEXT
579
580-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
581- [$4])
582+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])
583+ ])
584 else
585 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
586 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
587 AC_MSG_RESULT([yes])
588- ifelse([$3], , :, [$3])
589+ $3
590 fi[]dnl
591 ])# PKG_CHECK_MODULES
592
593=== modified file 'win32/include.am'
594--- win32/include.am 2011-11-04 21:06:16 +0000
595+++ win32/include.am 2012-01-30 06:09:24 +0000
596@@ -19,8 +19,7 @@
597
598
599 if BUILD_WIN32
600-libdrizzle_2_0_libdrizzle_2_0_la_SOURCES+= win32/conn_uds.cc
601-libdrizzle_1_0_libdrizzle_la_SOURCES+= win32/conn_uds.c
602+libdrizzle_1_0_libdrizzle_la_SOURCES+= win32/conn_uds.cc
603 endif
604
605 noinst_HEADERS+= \