How to exclude building/installing contrib modules on Windows

Started by deepakover 11 years ago6 messagesgeneral
Jump to latest
#1deepak
deepak.pn@gmail.com

Hi,

I would like to exclude building and installing contrib modules on Windows.

Is there an easy way to do this? I largely rely on the tools available in
src\tools\msvc to build using Visual Studio 2008.

Thanks,

Deepak

#2Michael Paquier
michael@paquier.xyz
In reply to: deepak (#1)
Re: How to exclude building/installing contrib modules on Windows

On Thu, Jan 8, 2015 at 6:08 AM, deepak <deepak.pn@gmail.com> wrote:

I would like to exclude building and installing contrib modules on Windows.

Is there an easy way to do this? I largely rely on the tools available in
src\tools\msvc to build using Visual Studio 2008.

Have a look at @contrib_excludes at the top of Mkvcbuild.pm. All the
contrib modules listed there will be ignored at build and install, so
just update it according to your needs if you want to ignore one thing
or another, including any custom thing you may have copied in the code
tree.
--
Michael

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#3deepak
deepak.pn@gmail.com
In reply to: Michael Paquier (#2)
Re: How to exclude building/installing contrib modules on Windows

Thanks.

I tried putting all the modules under the contrib directory to the
exclude list. Although I could compile, 3 of 153 regression tests
fail. I have attached the regression.diffs file.

Maybe some contrib modules are absolutely needed?

--
Deepak

On Wed, Jan 7, 2015 at 6:19 PM, Michael Paquier <michael.paquier@gmail.com>
wrote:

Show quoted text

On Thu, Jan 8, 2015 at 6:08 AM, deepak <deepak.pn@gmail.com> wrote:

I would like to exclude building and installing contrib modules on

Windows.

Is there an easy way to do this? I largely rely on the tools available

in

src\tools\msvc to build using Visual Studio 2008.

Have a look at @contrib_excludes at the top of Mkvcbuild.pm. All the
contrib modules listed there will be ignored at build and install, so
just update it according to your needs if you want to ignore one thing
or another, including any custom thing you may have copied in the code
tree.
--
Michael

Attachments:

regression.diffsapplication/octet-stream; name=regression.diffsDownload+116-105
#4Michael Paquier
michael@paquier.xyz
In reply to: deepak (#3)
Re: How to exclude building/installing contrib modules on Windows

On Fri, Jan 9, 2015 at 11:00 AM, deepak <deepak.pn@gmail.com> wrote:

Thanks.

I tried putting all the modules under the contrib directory to the
exclude list. Although I could compile, 3 of 153 regression tests
fail. I have attached the regression.diffs file.

Even Postgres HEAD has just 151 tests, aren't you using some fork?

Maybe some contrib modules are absolutely needed?

Yes, some are: spi/ for autoinc.dll, dummy_seclabel/ for dummy_seclabel.dll.
--
Michael

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#5deepak
deepak.pn@gmail.com
In reply to: Michael Paquier (#4)
Re: How to exclude building/installing contrib modules on Windows

Yes, I'm using a customized fork of 9.1.9.

Ok, adding back spi and dummy_seclabel makes all regression tests pass.

I now have one concern though. Inspite of adding pgcrypto to the
exclude list, it still ends up being built and installed. Any way to avoid
this?

Thanks,
Deepak

On Thu, Jan 8, 2015 at 8:54 PM, Michael Paquier <michael.paquier@gmail.com>
wrote:

Show quoted text

On Fri, Jan 9, 2015 at 11:00 AM, deepak <deepak.pn@gmail.com> wrote:

Thanks.

I tried putting all the modules under the contrib directory to the
exclude list. Although I could compile, 3 of 153 regression tests
fail. I have attached the regression.diffs file.

Even Postgres HEAD has just 151 tests, aren't you using some fork?

Maybe some contrib modules are absolutely needed?

Yes, some are: spi/ for autoinc.dll, dummy_seclabel/ for
dummy_seclabel.dll.
--
Michael

#6Michael Paquier
michael@paquier.xyz
In reply to: deepak (#5)
Re: How to exclude building/installing contrib modules on Windows

On Sun, Jan 11, 2015 at 8:36 AM, deepak <deepak.pn@gmail.com> wrote:

Yes, I'm using a customized fork of 9.1.9.
Ok, adding back spi and dummy_seclabel makes all regression tests pass.

Please do not top-post, this makes the thread lose readability.

I now have one concern though. Inspite of adding pgcrypto to the
exclude list, it still ends up being built and installed. Any way to avoid
this?

pgcrypto requires quite a bit of hacking to be compiled correctly, so
it is defined as an independent project, have a look at that in
Mkvcbuild.pm:
# Pgcrypto makefile too complex to parse....
my $pgcrypto = $solution->AddProject('pgcrypto','dll','crypto');
[blah]
--
Michael

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general