Re: Build process documentation? Also patches to make it easier to build individual packages

From: Devrim Gündüz <devrim(at)gunduz(dot)org>
To: Craig Ringer <craig(at)2ndquadrant(dot)com>, pgsql-pkg-yum <pgsql-pkg-yum(at)postgresql(dot)org>
Subject: Re: Build process documentation? Also patches to make it easier to build individual packages
Date: 2019-12-20 11:57:38
Message-ID: 7739364375d94845cbb9694b9c54a0ee1a61c311.camel@gunduz.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-pkg-yum


Hi Craig,

On Wed, 2019-12-18 at 14:39 +0800, Craig Ringer wrote:

> When I had to rebuild PostGIS 2.5 for EL-6 on Pg12 for a user, I found that
> the current build process for the repo appears to be undocumented. At least
> anywhere I could find in the repo, main pgdg yum site, and wiki entrypoint.

Right, and sorry about that.

> It looks like builds have transitioned to koji?

Nope, it is not koji. I (and Darcy B.) tried running koji a few times around
2007, and then gave up -- and did not change the naming since then.

> Given ./scripts/kojimachines/syncscripts/buildpackage.sh etc?

They are not up2date in git, and yes, I use something similar.

That said, we have separate VMs for each distro, which I build the packages on.
Recently I added 2 more VMs for CentOS 7 and 8, and use them to build non-free
repo packages.

> Is there any chance I can request a short README of a couple of paragraphs
> added to the root of the repo that lists what's in each important
> directory, points to the important URLs, and mentions how the packages are
> built?

Let's say you want to build Citus on RHEL 7. I have a wrapper script that
checks whether a software is available for a specific PostgreSQL version. If
yes, then it goes to $pgversion/#package_name/$distro_name, and runs make
build$pgversion.

When I find time, I'll document this.

> Would you be interested in accepting a sample definition for a container
> image to build/rebuild individual packages with too? To save others time in
> future if they need to do so? If you don't want to, that's fine, I can
> publish it separately.

Please publish it eeparately.

> On a side note: some spec files do not parse without additional macros so
> "yum builddep" cannot process them unless a definition for
> %pgmajorversion is added in ~/.rpmmacros . EL-6's yum builddep doesn't have
> a --define option to use at the command line. So in order to "yum builddep"
> those spec files I had to first
>
> echo '%pgmajorversion 12' >> /root/.rpmmacros
>
> in my build container. Hope this helps someone else.

Thanks. I don't need this in my own environment, but apparently it is useful.

Regards,
--
Devrim Gündüz
Open Source Solution Architect, Red Hat Certified Engineer
Twitter: @DevrimGunduz , @DevrimGunduzTR

In response to

Browse pgsql-pkg-yum by date

  From Date Subject
Next Message Stephen Frost 2019-12-20 15:06:44 Re: Can we stop defaulting to 'ident'?
Previous Message Christoph Berg 2019-12-20 10:32:40 Re: Can we stop defaulting to 'ident'?