Subject: Re: Problems creating a new package ...
To: Matthew Grooms <mgrooms@shrew.net>
From: Roland Illig <rillig@NetBSD.org>
List: pkgsrc-users
Date: 09/12/2007 12:00:48
Matthew Grooms wrote:
> Roland Illig wrote:
>
>>
>> OPT_NATT isn't prefixed with "-D", but should be. The reason for the
>> build failure was that _all_ other packages seemingly don't leave a
>> space between the -D and the name to be defined. I've fixed it in
>> mk/wrapper/arg-source revision 1.2.
>>
>
> Thanks for all your extremely helpful input. I removed the spaces in the
> CMakeLists.txt define statements and now all is well. Good call.
This shouldn't be necessary after updating mk/wrapper/arg-source.
>> Please always add a comment _why_ ONLY_FOR_PLATFORM is needed.
>>
>
> I have only tested this software on NetBSD, FreeBSD and Linux using i386
> and amd64 archs. I didn't want anyone to get bit on an untested platform
> so I included the line. What would be the best way to express this and
> where do I add the comment? Just in the Makefile or do you mean to echo
> output during the make process?
That's exactly the thing for which I don't want ONLY_FOR_PLATFORM to be
used. If you don't know whether it works or not, leave it, and other
people will find out. Only use {NOT,ONLY}_FOR_PLATFORM if you are sure
that it won't work.
The comment would be placed in the Makefile, above or at the right of
the definition.
>> I prefer USE_TOOLS+=bison here.
>>
>
> I must have bison 2.3 or later.
Ok.
> I do have one other question. The cmake configure process attempts to
> locate the qt3 package automatically. On all other platforms I have
> compiled, it just works. On NetBSD, I have to set the following for the
> configure process to work ...
>
> QTDIR=/usr/pkg/qt3
> QMAKESPEC=netbsd-g++
> PATH=${PATH}:${QTDIR}/bin
> LD_LIBRARY_PATH=/usr/pkg/qt3/lib/:/usr/X11R6/lib
Some of the included files add QTDIR and possibly other useful things to
the CONFIGURE_ENV variable, and that's why it is included in the default
do-configure code. You should provide the same environment:
> do-configure:
> ( cd ${WRKSRC} && ${LOCALBASE}/bin/cmake ${CMAKE_ARGS} )
do-configure:
cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \
${LOCALBASE}/bin/cmake ${CMAKE_ARGS}
You can run "bmake debug" or "bmake show-all-configure" to see what's in
the variable.
Roland