[exim] exim build on FreeBSD jail fails re: unrequested, mis…

Top Page
Delete this message
Reply to this message
Author: snowcrash+exim-users
Date:  
To: exim-users
Subject: [exim] exim build on FreeBSD jail fails re: unrequested, missing NIS symbols, but 2nd build's 'a charm'?
hi,

i'm installing exim (from ports) in a FreeBSD jail.

in Local/Makefile i do *NOT* have LOOKUP_NIS defined, i.e.,

    ...
    #LOOKUP_NIS=yes
    ...


that said, i see the following, apparently NIS-related, weirdness ...

as usual, i do,

    cd /usr/ports/mail/exim
    make distclean rmconfig extract
    cp -f /usr/local/etc/exim/My_Local_Makefile \
          /s/portbuild/usr/ports/mail/exim/work/exim-4.69/Local/Makefile

    
    rm -rf /s/portbuild/usr/ports/mail/exim/work/exim-4.69/build-FreeBSD-amd64
    make makefile

    
    cd /usr/ports/mail/exim
    make


which fails at,

    ...
    /usr/local/libexec/ccache/cc dkim-exim.c

    
    awk '{ print ($1+1) }' cnumber.h > cnumber.temp
    rm -f cnumber.h; mv cnumber.temp cnumber.h
    /usr/local/libexec/ccache/cc version.c
    rm -f exim
    /usr/local/libexec/ccache/cc -o exim
    lookups/lookups.a(nis.o)(.text+0xe): In function `nis_open':
    : undefined reference to `yp_get_default_domain'
    lookups/lookups.a(nis.o)(.text+0x51): In function `nis_find':
    : undefined reference to `yp_match'
    lookups/lookups.a(nis.o)(.text+0xa3): In function `nis0_find':
    : undefined reference to `yp_match'
    *** Error code 1

    
    Stop in /s/portbuild/usr/ports/mail/exim/work/exim-4.69/build-FreeBSD-amd64.
    *** Error code 1

    
    Stop in /s/portbuild/usr/ports/mail/exim/work/exim-4.69.
    *** Error code 1

    
    Stop in /usr/ports/mail/exim.


but, if i simply *REPEAT*, with no other steps/changes,

    cp -f /usr/local/etc/exim/My_Local_Makefile \
          /s/portbuild/usr/ports/mail/exim/work/exim-4.69/Local/Makefile

    
    rm -rf /s/portbuild/usr/ports/mail/exim/work/exim-4.69/build-FreeBSD-amd64
    make makefile

    
    cd /usr/ports/mail/exim
    make


it now completes,

    ...
    /usr/local/libexec/ccache/cc dkim-exim.c

    
    awk '{ print ($1+1) }' cnumber.h > cnumber.temp
    rm -f cnumber.h; mv cnumber.temp cnumber.h
    /usr/local/libexec/ccache/cc version.c
    rm -f exim
    /usr/local/libexec/ccache/cc -o exim
    /usr/bin/strip exim

    
    >>> exim binary built



i'm guessing something required is cached/saved after the failed 1st
run, that then makes the 2nd run successful.

question is, "what"?

any hints?

thanks.