Opened 3 years ago

Closed 2 years ago

#63704 closed defect (fixed)

heimdal: fatal error: 'hdb-protos.h' file not found

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc:
Port: heimdal

Description

https://build.macports.org/builders/ports-10.12_x86_64-builder/builds/162598/steps/install-port/logs/stdio

In file included from common.c:34:
In file included from ./hdb_locl.h:67:
./hdb.h:312:10: fatal error: 'hdb-protos.h' file not found
#include <hdb-protos.h>
         ^~~~~~~~~~~~~~

Change History (2)

comment:1 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to ryandesign
Status: newaccepted

This is happening on all buildbot workers running 10.15 and earlier. The reason why the file is missing is shown earlier in the log:

make[3]: Entering directory `/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_net_heimdal/heimdal/work/heimdal-7.7.0/lib/hdb'
cd .; perl ../../cf/make-proto.pl -q -P comment -o hdb-protos.h common.c db.c db3.c ext.c hdb-ldap.c hdb.c hdb-sqlite.c hdb-keytab.c hdb-mdb.c hdb-mitdb.c hdb_locl.h keys.c keytab.c dbinfo.c mkey.c ndbm.c print.c || rm -f hdb-protos.h
cd .; perl ../../cf/make-proto.pl -q -P comment -p hdb-private.h common.c db.c db3.c ext.c hdb-ldap.c hdb.c hdb-sqlite.c hdb-keytab.c hdb-mdb.c hdb-mitdb.c hdb_locl.h keys.c keytab.c dbinfo.c mkey.c ndbm.c print.c || rm -f hdb-private.h
Can't locate JSON.pm in @INC (you may need to install the JSON module) (@INC contains: /Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18 /Network/Library/Perl/5.18/darwin-thread-multi-2level /Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.4 /System/Library/Perl/5.18/darwin-thread-multi-2level /System/Library/Perl/5.18 /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level /System/Library/Perl/Extras/5.18 .) at ../../cf/make-proto.pl line 7.
BEGIN failed--compilation aborted at ../../cf/make-proto.pl line 7.
Can't locate JSON.pm in @INC (you may need to install the JSON module) (@INC contains: /Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18 /Network/Library/Perl/5.18/darwin-thread-multi-2level /Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.4 /System/Library/Perl/5.18/darwin-thread-multi-2level /System/Library/Perl/5.18 /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level /System/Library/Perl/Extras/5.18 .) at ../../cf/make-proto.pl line 7.
BEGIN failed--compilation aborted at ../../cf/make-proto.pl line 7.

The build also fails on my 10.15 machine in trace mode but succeeds with perl5+perl5_28 and p5.28-json installed.

comment:2 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: acceptedclosed

In 932d1ef5abd9c15616d8d6c49430d1655bf20ca1/macports-ports (master):

heimdal: Fix build without perl with JSON module

Because we are patching lib/hdb/hdb-mitdb.c the build system wanted to
regenerate the private headers which requires a copy of perl that has
the JSON module.

Closes: #63704

Note: See TracTickets for help on using tickets.