Subject: need advice/help for a Mac OS X-specific p5- pkg
To: pkgsrc-users <pkgsrc-users@netbsd.org>
From: Mark E. Perkins <perkinsm@bway.net>
List: pkgsrc-users
Date: 09/16/2007 12:16:22
I'm trying to make a pkg for Mac::Carbon from CPAN:

	<http://search.cpan.org/dist/Mac-Carbon>

It uses 40+ headers from /Developer/Headers/FlatCarbon in various places.
The build is failing even though the gcc commands have
'-I/Developer/Headers/FlatCarbon', e.g.,

...

gcc -c  -I/Developer/Headers/FlatCarbon/  -fno-common -DPERL_DARWIN
-no-cpp-precomp -fno-strict-aliasing -pipe -Wdeclaration-after-statement
-fpascal-strings -pipe -O2 -I/usr/pkg/include -I/usr/include
-no-cpp-precomp -I/usr/pkg/include -I/usr/include    -DVERSION=\"1.32\"
-DXS_VERSION=\"1.32\"
"-I/usr/pkg/lib/perl5/5.8.0/darwin-thread-multi-2level/CORE"   AppleEvents.c
In file included from AppleEvents.xs:63:
../Carbon.h:67:20: error: Events.h: No such file or directory
../Carbon.h:68:21: error: Dialogs.h: No such file or directory
../Carbon.h:69:19: error: Files.h: No such file or directory
../Carbon.h:70:19: error: Types.h: No such file or directory
../Carbon.h:71:31: error: ConditionalMacros.h: No such file or directory

...

I can fix this with a 'pre-build' target as in the Makefile shown below.
But why is the -I/Developer/Headers/FlatCarbon/ ignored?  (The usual perl
dance of 'perl Makefile.PL ....' works fine, BTW.)  Is there a better way
to fix this?

Makefile and distinfo included below for any Mac OS X pkgsrc users
interested giving this a go (and maybe suggesting a better fix).

Thanks,
Mark



---------------8<----- Makefile -----8<---------------
# $NetBSD$
#

DISTNAME=	Mac-Carbon-0.77
PKGNAME=	p5-${DISTNAME}
CATEGORIES=	devel perl5
MASTER_SITES=	${MASTER_SITE_PERL_CPAN:=Mac/}

HOMEPAGE=	http://search.cpan.org/dist/Mac-Carbon/
COMMENT=	Perl modules for accessing the Carbon API under Mac OS X

PKG_INSTALLATION_TYPES=	overwrite pkgviews

PERL5_PACKLIST=	auto/Mac/Carbon/.packlist

USE_LANGUAGES=	c++

pre-build:
	${LN} -s /Developer/Headers/FlatCarbon/* work/.buildlink/include

.include "../../lang/perl5/module.mk"
.include "../../mk/bsd.pkg.mk"


---------------8<----- distinfo -----8<---------------
$NetBSD$

SHA1 (Mac-Carbon-0.77.tar.gz) = a94b45592b648af3086ebe53e364011a9ab638f6
RMD160 (Mac-Carbon-0.77.tar.gz) = 8fe59735da65fd359ab835809742a4114ecaa9b5
Size (Mac-Carbon-0.77.tar.gz) = 300127 bytes