Re: building on freeBSD

Marcin Cieslak <[email protected]> Sat, 23 May 2026 23:46:46 +0000
Newsgroups gmane.mail.nmh.devel
Message-ID <[email protected]>
--2201072851-1067706445-1779580006=:2290
Content-Type: text/plain; charset=US-ASCII; format=flowed

On Sat, 23 May 2026, Philipp wrote:

> Hi
>
> When building on FreeBSD you need additional LDFLAGS and CPPFLAGS which
> includes the localbase. For simpler setup the configure.ac contains
> a check for FreeBSD and adds the localbase to the compiler flags.
>
> The problem is the command to find the localbase assumes the portstree
> is availible. When the portstree is not availible the configure script
> fails while checking for connect.
>
> So the command is:
>
>> echo '.include <bsd.port.mk>' | make -k -f /dev/stdin -V LOCALBASE

nmh uses GNU make which is not really compatible with the BSD make
except for some very simple Makefiles.

There are three solutions to this:

1) Use the nmh port from the FreeBSD ports collection (this is what I do)

2) Use GNU make (installed from FreeBSD ports/packages or otherwsie as "gmake")

3) Prepare BSDmakefile and add it to the repository. 
<bsd.port.mk> is a part of FreeBSD ports infrastructure so it is pretty normal
it requires the ports tree to be available.

<bsd.prog.mk> and others from /usr/share/mk could be used to build, but this may
require some restructuring, such as having one program per makefile or directory.

Bonus points: there would be no need to use autoconf at all for this build,
as BSD make is much more high level than GNU makefile.

This could even make to work in parallel and be commited to the repo as
a set of BSDmakefiles living along the autoconf templates.

Hope this helps a bit,
Marcin
--2201072851-1067706445-1779580006=:2290
Content-Type: application/pkcs7-signature; name=smime.p7s
Content-Transfer-Encoding: BASE64
Content-Description: S/MIME Cryptographic Signature
Content-Disposition: attachment; filename=smime.p7s

MCMGCSqGSIb3DQEHAqAWMBQCAQExADALBgkqhkiG9w0BBwExAA==

--2201072851-1067706445-1779580006=:2290--