pcp
[Top] [All Lists]

Build fails in docker

To: pcp <pcp@xxxxxxxxxxx>
Subject: Build fails in docker
From: Martins Innus <minnus@xxxxxxxxxxx>
Date: Wed, 15 Jun 2016 09:22:36 -0400
Delivered-to: pcp@xxxxxxxxxxx
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:45.0) Gecko/20100101 Thunderbird/45.1.1
Hi,
This is a bit of an edge case probably, but trying to build the full pcp version, ie non-containerized builds, with ./Makepkgs from inside the official centos7 docker container fails currently.

Everything seems to build fine, but the actual rpm packaging fails saying that it can't find the man pages. It turns out that the packing portion of rpmbuild is looking for non-gzipped man pages while gzipped man pages are actually created.

The scenario seems to be as follows:

1. The centos docker images explicitly disable man page installation with "tsflags=nodocs" in yum.conf. So no man pages exist in the container

2. The configure check for gzipped man pages fails since there are none at all:

######
for d in /usr/man /usr/share/man $pcp_man_dir
do
    for sd in man1 sman1
    do
        if test -f $d/$sd/man.1.gz
        then
            have_gzipped_manpages=true
######

3. Therefore, pcp.spec thinks that it should compile a list of non-gzipped manpages

4. gzipped man pages get built somehow anyway, I assume maybe from brp_compress. I'm a little fuzzy on how this is supposed to work.

5. 3&4 don't match and the build fails.


I can fix my build by doing:

yum --setopt tsflags='' reinstall man

followed by ./Makepkgs

Then everything works since man.1.gz exists, but I'm not sure if this is worth fixing in the build itself. Just wanted to document this in case anyone else hits it.

Martins

<Prev in Thread] Current Thread [Next in Thread>