Development/CMake KDE 4 3: Difference between revisions

From KDE TechBase
(New page: ==Incompatible Changes== From KDE 4.0.0 to KDE 4.2.x a call to find_package(KDE4) failed if Perl could not be found. This was an internal, undocumented implementation detail and not nec...)
 
No edit summary
Line 1: Line 1:
==Incompatible Changes==
==Incompatible Changes==


From KDE 4.0.0 to KDE 4.2.x a call to  
# Perl is not required anymore. From KDE 4.0.0 to KDE 4.2.x a call to  
<pre>
find_package(KDE4)
find_package(KDE4)
</pre>
failed if Perl could not be found.  
failed if Perl could not be found.  
This was an internal, undocumented implementation detail and not necessary, since building software for KDE4 doesn't actually require Perl in general.
This was an internal, undocumented implementation detail and not necessary, since building software for KDE4 doesn't actually require Perl in general.
Line 8: Line 10:
This way one dependency less is necessary to build software for KDE4.
This way one dependency less is necessary to build software for KDE4.
Perl is still required to build kdelibs.
Perl is still required to build kdelibs.
So if you use Perl in your project, check properly for it:
<pre>
find_package(Perl REQUIRED)
# in case you didn't use the REQUIRED keyword:
if (PERL_FOUND)
...
</pre>

Revision as of 21:01, 27 March 2009

Incompatible Changes

  1. Perl is not required anymore. From KDE 4.0.0 to KDE 4.2.x a call to
find_package(KDE4)

failed if Perl could not be found. This was an internal, undocumented implementation detail and not necessary, since building software for KDE4 doesn't actually require Perl in general. With KDE 4.3 this has been changed. Now Perl is still searched, but if it is not found, the CMake-run doesn't fail, it just prints a warning message. This way one dependency less is necessary to build software for KDE4. Perl is still required to build kdelibs. So if you use Perl in your project, check properly for it:

find_package(Perl REQUIRED)
# in case you didn't use the REQUIRED keyword:
if (PERL_FOUND)
...