Skip site navigation (1) Skip section navigation (2)

Re: configure "stuff"

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Dave Page <dpage(at)pgadmin(dot)org>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: configure "stuff"
Date: 2011-06-27 07:32:56
Message-ID: 1309159976.4790.18.camel@laptop (view raw or flat)
Thread:
Lists: pgadmin-hackers
On Sun, 2011-06-26 at 20:35 +0100, Dave Page wrote:
> On Sat, Jun 25, 2011 at 7:26 PM, Guillaume Lelarge
> <guillaume(at)lelarge(dot)info> wrote:
> > Hi,
> >
> > I received an email a few days ago (humm, weeks) about issues with
> > compiling pgAdmin.
> >
> > ====== extract ======
> > The file pgadmin/db/keywords.c has this statement in it:
> > #include <server/parser/kwlist.h>
> >
> >  Now it comes that pg_config does spit out either
> > /usr/include/postgresql for the --includedir switch (for client things)
> > and /usr/include/postgresql/9.0/server for --includedir-server. Given
> > that both seems to work well for other stuff I'm unsure whether there is
> > a problem here and it should rather be #include <parser/kwlist.h> (or
> > the file be moved out of server context).
> > ====== end of extract ======
> >
> > I took a quick look at it, and it seems we forgot something. If I'm not
> > wrong, we don't use the --includedir-server switch for our includes in
> > the configure script (actually, in the acinclude.m4 file). And it breaks
> > the compilation on Debian when a user uses the PostgreSQL package on
> > Debian or any other .deb linux distributions. We already do this for the
> > package include dir (--pkgincludedir), I don't see any reason why we
> > shouldn't do it for the server one.
> 
> Hmm, that would explain it - until now it's worked for some people and
> not for others and we've assumed it was a broken -dev package. I
> assume something like this does the trick:
> 
> diff --git a/acinclude.m4 b/acinclude.m4
> index e379c62..f5eeaa4 100644
> --- a/acinclude.m4
> +++ b/acinclude.m4
> @@ -548,8 +548,9 @@ AC_DEFUN([SETUP_POSTGRESQL],
>                 AC_LANG_RESTORE
> 
>                 PG_INCLUDE=`${PG_CONFIG} --includedir`
> +               PG_SVRINCLUDE=`${PG_CONFIG} --includedir-server`
>                 PG_PKGINCLUDE=`${PG_CONFIG} --pkgincludedir`
> -               CPPFLAGS="$CPPFLAGS -I${PG_INCLUDE} -I${PG_PKGINCLUDE}"
> +               CPPFLAGS="$CPPFLAGS -I${PG_INCLUDE} -I${PG_SVRINCLUDE}
> -I${PG_PKGINCLUDE}"
> 
>                 PG_VERSION=`${PG_CONFIG} --version`
> 

Yes, that's pretty much what I was thinking. There is also another file
that needs to be updated:

diff --git a/pgadmin/db/keywords.c b/pgadmin/db/keywords.c
index 9370a9e..0362a71 100644
--- a/pgadmin/db/keywords.c
+++ b/pgadmin/db/keywords.c
@@ -30,7 +30,7 @@
  */
 #define PG_KEYWORD(a,b,c) {a,c},
 const ScanKeyword ScanKeywords[] = {
-#include <server/parser/kwlist.h>
+#include "parser/kwlist.h"
 };
 const int NumScanKeywords = lengthof(ScanKeywords);
 

Can I commit both changes?


-- 
Guillaume
  http://blog.guillaume.lelarge.info
  http://www.dalibo.com


In response to

Responses

pgadmin-hackers by date

Next:From: Guillaume LelargeDate: 2011-06-27 07:34:44
Subject: Re: pgAdmin III commit: Database Designer (milestone 1 of GSoC 2011)
Previous:From: Magnus HaganderDate: 2011-06-27 07:31:40
Subject: Re: pgAdmin III commit: Database Designer (milestone 1 of GSoC 2011)

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group