[aur-general] cmake build

Ray Rashif schivmeister at gmail.com
Fri Aug 27 07:08:37 EDT 2010


On 27 August 2010 15:55, Nathan O <ndowens.aur at gmail.com> wrote:
> On Fri, Aug 27, 2010 at 2:50 AM, Magnus Therning <magnus at therning.org>wrote:
>
>> On Fri, Aug 27, 2010 at 08:44, Nathan O <ndowens.aur at gmail.com> wrote:
>> > On Fri, Aug 27, 2010 at 2:41 AM, Magnus Therning <magnus at therning.org
>> >wrote:
>> >
>> >> On Fri, Aug 27, 2010 at 08:30, Nathan O <ndowens.aur at gmail.com> wrote:
>> >> > On Fri, Aug 27, 2010 at 2:28 AM, Magnus Therning <magnus at therning.org
>> >> >wrote:
>> >> [...]
>> >> > That is weird that you got grep to tell you which file(s) it was, when
>> >> > mine pointed nothing out to me.
>> >>
>> >> Indeed.  This is what I see:
>> >>
>> >>  % grep -R $(pwd)/src pkg
>> >>   Binary file pkg/usr/bin/fqterm.bin matches
>> >>
>> >> I'm not sure if the dollar-sign was lost in your earlier email, but it
>> is
>> >> required to get the expected result.
>> >>
>> > Tried it exactly how you typed it as well, and nothing again
>>
>> Fascinating!  Computers, eh?  ;-)
>>
>> Anyway, if you are happy with my cheerful hand-waving of an explanation in
>> the
>> earlier email then just disregard the warning from pacman for now.
>>  Otherwise
>> seek out someone who's more knowledgeable about QT and ask them.  That's
>> pretty much the only advice I can give.
>>
>> /M
>>
>> --
>> Magnus Therning                        (OpenPGP: 0xAB4DFBA4)
>> magnus@therning.org          Jabber: magnus@therning.org
>> http://therning.org/magnus         identi.ca|twitter: magthe
>>
>
> I uploaded the version that gave the warning before, since I can't reproduce
> what result you got.

Hi Nathan

That PKGBUILD is broken and bails. You don't need to move stuff around
so much if the build system is unified
(configure/cmake/make/scons/waf). You can use this PKGBUILD instead:

http://paste.pocoo.org/show/255008/

Notice that there is a "ccmake ." (note the dot) - that is just for
your reference as a package maintainer (press C and then G to
finalize). Use it to verify that all variables are correct, and what
else is available to configure. As such, patching a cmake-based build
system is incorrect; you simply configure with the options and prepend
"-D", i.e if you need to set RPATH off (you _don't_ need that with
this package):

cmake . -DCMAKE_INSTALL_PREFIX=/usr \
               -DCMAKE_SKIP_RPATH=ON

You can have it all on one line, doesn't matter (styling issue). Also,
the reference to $srcdir is within a binary, which is OK 90% of the
time. If you notice weird mentions of the build directory at runtime,
you need to report it upstream. This is my output:

[schiv at v3000 fqterm]$ grep -R "$(pwd)/src" pkg/
Binary file pkg/usr/bin/fqterm.bin matches

The use of quotes (" ") on variables and commands; use them whenever
there is possibility of reference to something with whitespace(s),
like a path (and paths can have spaces, especially when makepkg can be
run by a user from any dir). That's why when you see buildscripts of
some people or community (for eg. Gentoo ebuilds) they have
standardised the following for the sake of consistency:

"${foobar}"

The braces ({ }) allow escaping run-together words as variables, i.e
$foo_$bar won't work, you have to use ${foo}_$bar.


--
GPG/PGP ID: B42DDCAD


More information about the aur-general mailing list