post-release: tighten library dependencies

NOTE: we have the policy to always support current Debian/stable
amd at least one Ubuntu LTS release, unless hard dependency problems prevent that.
Currently, Ubuntu/Trusty is already a bit dated, but the only problematic dependency
could be libboost (1.54 in Trusty, 1.55 in Jessie).
GCC-4.8 can be replaced by GCC-4.9 in Trusty without problems

It is always a bit tricky to find out the precise lower boundary,
so we try to upgrade these requirements as our platform progresses.
For now we have used the level available on Ubuntu/Trusty to set
the lower constraints for most libraries
This commit is contained in:
Fischlurch 2015-11-03 03:37:12 +01:00
commit 8a707f3a41
3 changed files with 119 additions and 21 deletions

View file

@ -56,7 +56,7 @@ def configure(env):
conf.env.Append(CPPFLAGS = ' -DHAVE_PTHREAD') conf.env.Append(CPPFLAGS = ' -DHAVE_PTHREAD')
conf.env.Append(CCFLAGS = ' -pthread') conf.env.Append(CCFLAGS = ' -pthread')
if not conf.CheckLib(symbol='clock_gettime', library='rt'): if not conf.CheckLib(symbol='clock_gettime', library='rt'): # note librt is usually installed with libc6
problems.append('We expect the POSIX realtime extensions to be available through librt. ' + problems.append('We expect the POSIX realtime extensions to be available through librt. ' +
'Unable to use clock_gettime()') 'Unable to use clock_gettime()')
@ -100,7 +100,7 @@ def configure(env):
problems.append('We need the boost regular expression lib (incl. binary lib for linking).') problems.append('We need the boost regular expression lib (incl. binary lib for linking).')
if not conf.CheckPkgConfig('gavl', 1.0): if not conf.CheckPkgConfig('gavl', '1.4'):
problems.append('Did not find Gmerlin Audio Video Lib [http://gmerlin.sourceforge.net/gavl.html].') problems.append('Did not find Gmerlin Audio Video Lib [http://gmerlin.sourceforge.net/gavl.html].')
else: else:
conf.env.mergeConf('gavl') conf.env.mergeConf('gavl')
@ -108,16 +108,19 @@ def configure(env):
if not conf.CheckPkgConfig('alsa', '1.0.23'): if not conf.CheckPkgConfig('alsa', '1.0.23'):
problems.append('Support for ALSA sound output is required') problems.append('Support for ALSA sound output is required')
if not conf.CheckPkgConfig('gtkmm-3.0', 3.0): if not conf.CheckPkgConfig('gtkmm-3.0', '3.10'):
problems.append('Unable to configure GTK--') problems.append('Unable to configure the mm-bindings for GTK-3')
if not conf.CheckPkgConfig('glibmm-2.4', '2.16'): if not conf.CheckPkgConfig('glibmm-2.4', '2.39'):
problems.append('Unable to configure Lib glib--') problems.append('Unable to configure the mm-bindings for Glib')
if not conf.CheckPkgConfig('gthread-2.0', '2.12.4'): if not conf.CheckPkgConfig('glib-2.0', '2.40'):
problems.append('Need gthread support lib for glib-- based thread handling.') problems.append('Need a suitable Glib version.')
if not conf.CheckPkgConfig('cairomm-1.0', 0.6): if not conf.CheckPkgConfig('gthread-2.0', '2.40'):
problems.append('Need gthread support lib for Glib based thread handling.')
if not conf.CheckPkgConfig('cairomm-1.0', '1.10'):
problems.append('Unable to configure Cairo--') problems.append('Unable to configure Cairo--')
verGDL = '3.12' verGDL = '3.12'
@ -132,12 +135,14 @@ def configure(env):
'(either from GNOME %s or use the debian package from %s)' % '(either from GNOME %s or use the debian package from %s)' %
(verGDLmm, urlGDLmm, urlGDLmmDEB)) (verGDLmm, urlGDLmm, urlGDLmmDEB))
if not conf.CheckPkgConfig('librsvg-2.0', '2.18.1'): if not conf.CheckPkgConfig('librsvg-2.0', '2.30'):
problems.append('Need rsvg Library for rendering icons.') problems.append('Need rsvg Library for rendering icons.')
if not conf.CheckCHeader(['X11/Xutil.h', 'X11/Xlib.h'],'<>'): if not conf.CheckCHeader(['X11/Xutil.h', 'X11/Xlib.h'],'<>'):
problems.append('Xlib.h and Xutil.h required. Please install libx11-dev.') problems.append('Xlib.h and Xutil.h required. Please install libx11-dev.')
# NOTE the following dependencies where for the video displayer widget.
# As of 11/2015 this is broken and disabled. Might be obsolete....
if not conf.CheckPkgConfig('xv') : problems.append('Need libXv...') if not conf.CheckPkgConfig('xv') : problems.append('Need libXv...')
if not conf.CheckPkgConfig('x11') : problems.append('Need X-lib...') # for the xvdisplayer widget if not conf.CheckPkgConfig('x11') : problems.append('Need X-lib...') # for the xvdisplayer widget
if not conf.CheckPkgConfig('xext'): problems.append('Need libXext.') if not conf.CheckPkgConfig('xext'): problems.append('Need libXext.')

View file

@ -21,7 +21,7 @@ Having said that -- for the time being, the core team won't spend much effort on
Platform Platform
-------- --------
We develop and test on standard PC hardware, 32 and 64 bit. We develop and test on standard PC hardware, 32 and 64 bit.
It is intended to target other platforms running run GNU/Linux eventually. It is intended to target other platforms running GNU/Linux eventually.
Lumiera expects a `standard' desktop installation running a XServer. Lumiera expects a `standard' desktop installation running a XServer.
Graphics:: Graphics::
@ -42,6 +42,12 @@ Special Hardware::
* Specs and APIs must be open. * Specs and APIs must be open.
* someone to do the actual interfacing and support needs to join the team * someone to do the actual interfacing and support needs to join the team
Compatibility
~~~~~~~~~~~~~
We try to keep our depdendencies close to Debian/stable and the most recent Ubuntu LTS.
Whenever we need more recent libraries or other dependencies not available for our reference platform,
we care to provide custom Debian / Ubuntu packages as reference. This does not mean Lumiera is
limited to Devian flavours, it should work on any current Linux distribution.
Languages and Tools Languages and Tools
------------------- -------------------
@ -86,7 +92,7 @@ Libraries
* for the GUI: (*GTK-3*) gtkmm-3.0 gdlmm-3.0 glibmm-2.4 cairomm-1.0 xv * for the GUI: (*GTK-3*) gtkmm-3.0 gdlmm-3.0 glibmm-2.4 cairomm-1.0 xv
- libgtkmm-3.0-dev - libgtkmm-3.0-dev
- libcairomm-1.0-dev - libcairomm-1.0-dev
- libglibmm-2.4-dev, requiring at least glib2.0 and gthread-2.0 - libglibmm-2.4-dev, requiring at least glib2.0 (2.40 or better) and gthread-2.0
- libxv-dev footnote:[for the XV viewer widget `gui/output/xvdisplayer.cpp` - libxv-dev footnote:[for the XV viewer widget `gui/output/xvdisplayer.cpp`
-- currently obsolete as of [yellow-background]#5/2015#][yellow-background]#TODO 5/2015# and X-lib -- currently obsolete as of [yellow-background]#5/2015#][yellow-background]#TODO 5/2015# and X-lib
- librsvg-2.0 and librsvg2-dev for rendering Icons - librsvg-2.0 and librsvg2-dev for rendering Icons

View file

@ -2170,6 +2170,9 @@
<icon BUILTIN="ksmiletris"/> <icon BUILTIN="ksmiletris"/>
</node> </node>
</node> </node>
<node CREATED="1446515847047" ID="ID_290915762" MODIFIED="1446515861953" TEXT="GtkCssProvider">
<node CREATED="1446515865029" ID="ID_1503616150" MODIFIED="1446515869624" TEXT="parsing errors"/>
</node>
</node> </node>
</node> </node>
<node CREATED="1437693678626" FOLDED="true" ID="ID_1536988357" MODIFIED="1446480525549" POSITION="left" TEXT="Doku"> <node CREATED="1437693678626" FOLDED="true" ID="ID_1536988357" MODIFIED="1446480525549" POSITION="left" TEXT="Doku">
@ -2599,6 +2602,63 @@
<icon BUILTIN="bell"/> <icon BUILTIN="bell"/>
</node> </node>
</node> </node>
<node CREATED="1446505444775" HGAP="106" ID="ID_721807850" MODIFIED="1446505465178" TEXT="Buildsystem" VSHIFT="-5">
<node CREATED="1446505367113" ID="ID_335245102" LINK="http://issues.lumiera.org/ticket/971" MODIFIED="1446505490390">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
standard hardening-flags setzen <font color="#ba015b">#971</font>
</p>
</body>
</html>
</richcontent>
</node>
<node CREATED="1446509415481" ID="ID_180589749" MODIFIED="1446509643475" TEXT="Versionen hochsetzen">
<richcontent TYPE="NOTE"><html>
<head>
</head>
<body>
<p>
w&#228;hle Kompatibilt&#228;t genau so, da&#223; Ubuntu-Trusty noch unterst&#252;tzt wird.
</p>
</body>
</html>
</richcontent>
<node CREATED="1446509422423" ID="ID_1328716100" MODIFIED="1446516746079" TEXT="gtkmm-3.0 3.10">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446509430758" ID="ID_371171235" MODIFIED="1446516743246" TEXT="glibmm-2.4 2.39">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446509601271" ID="ID_1477664506" MODIFIED="1446517191405" TEXT="libglib2.0 2.40">
<icon BUILTIN="button_ok"/>
<node CREATED="1446510347931" ID="ID_559552800" MODIFIED="1446510354349" TEXT="direkten Check hierf&#xfc;r"/>
<node CREATED="1446510354914" ID="ID_1787485177" MODIFIED="1446510366196" TEXT="check f&#xfc;r gthread fraglich"/>
</node>
<node CREATED="1446509752707" ID="ID_1392554051" MODIFIED="1446509764365" TEXT="libgdl-3-dev 3.12">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446509983556" ID="ID_366391443" MODIFIED="1446516706132" TEXT="libcairomm-1.0-dev 1.10">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446510475202" ID="ID_514495017" MODIFIED="1446516657520" TEXT="librsvg2-dev 2.30">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446511275302" ID="ID_359693763" MODIFIED="1446516636391" TEXT="libgavl-dev 1.4">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446510776857" ID="ID_674774779" MODIFIED="1446516531133" TEXT="Kommentar: librt geh&#xf6;rt zu libc 6">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446511125266" ID="ID_1198662071" MODIFIED="1446516619027" TEXT="Kommentar zu xv, x11 und xext : TODO videodisplayer obsolet?">
<icon BUILTIN="button_ok"/>
</node>
</node>
</node>
<node CREATED="1446480582168" HGAP="46" ID="ID_554745278" MODIFIED="1446481388737" TEXT="Release" VSHIFT="-5"> <node CREATED="1446480582168" HGAP="46" ID="ID_554745278" MODIFIED="1446481388737" TEXT="Release" VSHIFT="-5">
<node CREATED="1446480601381" ID="ID_1870415321" MODIFIED="1446494976104" TEXT="release prep: clean-up obsolete information"> <node CREATED="1446480601381" ID="ID_1870415321" MODIFIED="1446494976104" TEXT="release prep: clean-up obsolete information">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
@ -2704,7 +2764,7 @@
<node CREATED="1446481305102" ID="ID_1191774545" MODIFIED="1446481312561" TEXT="lfd Fixes von den DEBs"/> <node CREATED="1446481305102" ID="ID_1191774545" MODIFIED="1446481312561" TEXT="lfd Fixes von den DEBs"/>
<node CREATED="1446481314669" ID="ID_477388235" MODIFIED="1446481329223" TEXT="Plattform-Abh&#xe4;ngigkeiten checken"/> <node CREATED="1446481314669" ID="ID_477388235" MODIFIED="1446481329223" TEXT="Plattform-Abh&#xe4;ngigkeiten checken"/>
</node> </node>
<node CREATED="1446480963028" ID="ID_83763074" MODIFIED="1446497660446" TEXT="Release-commit: Pre-release 0.pre.02"> <node CREATED="1446480963028" ID="ID_83763074" MODIFIED="1446499218296" TEXT="Release-commit: Pre-release 0.pre.03">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
<head> <head>
@ -2732,7 +2792,7 @@
</node> </node>
<node CREATED="1446481129206" ID="ID_799927356" MODIFIED="1446481131809" TEXT="LICENSE"/> <node CREATED="1446481129206" ID="ID_799927356" MODIFIED="1446481131809" TEXT="LICENSE"/>
</node> </node>
<node CREATED="1446481516578" ID="ID_552450474" MODIFIED="1446481560325" TEXT="Release-Zweig: upgrade current release to 0.pre.02"> <node CREATED="1446481516578" ID="ID_552450474" MODIFIED="1446499604358" TEXT="Release-Zweig: upgrade current release to 0.pre.03">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
<head> <head>
@ -2748,14 +2808,26 @@
</html> </html>
</richcontent> </richcontent>
<icon BUILTIN="full-5"/> <icon BUILTIN="full-5"/>
<icon BUILTIN="button_ok"/>
</node> </node>
<node CREATED="1446481591568" ID="ID_1120064498" MODIFIED="1446481599057" TEXT="Paketieren"> <node CREATED="1446481591568" ID="ID_1120064498" MODIFIED="1446515980127" TEXT="Paketieren">
<icon BUILTIN="full-6"/> <icon BUILTIN="full-6"/>
<node CREATED="1446481606134" ID="ID_212330450" MODIFIED="1446481617041" TEXT="Merge release -&gt; deb"/> <icon BUILTIN="button_ok"/>
<node CREATED="1446481618196" ID="ID_1882691551" MODIFIED="1446481637270" TEXT="Paket-Beschreibung"/> <node CREATED="1446481606134" ID="ID_212330450" MODIFIED="1446515946971" TEXT="Merge release -&gt; deb">
<node CREATED="1446481637738" ID="ID_1002196753" MODIFIED="1446481639997" TEXT="Manpages"/> <icon BUILTIN="button_ok"/>
<node CREATED="1446481646057" ID="ID_262549512" MODIFIED="1446481655180" TEXT="control"/> </node>
<node CREATED="1446481655743" ID="ID_269337100" MODIFIED="1446481657219" TEXT="rules"/> <node CREATED="1446481618196" ID="ID_1882691551" MODIFIED="1446515950202" TEXT="Paket-Beschreibung">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446481637738" ID="ID_1002196753" MODIFIED="1446515972779" TEXT="Manpages">
<icon BUILTIN="bell"/>
</node>
<node CREATED="1446481646057" ID="ID_262549512" MODIFIED="1446515957896" TEXT="control">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1446481655743" ID="ID_269337100" MODIFIED="1446515960028" TEXT="rules">
<icon BUILTIN="button_ok"/>
</node>
</node> </node>
<node CREATED="1446481713984" ID="ID_1112453089" MODIFIED="1446481736903" TEXT="ausliefern"> <node CREATED="1446481713984" ID="ID_1112453089" MODIFIED="1446481736903" TEXT="ausliefern">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
@ -2797,7 +2869,9 @@
</html> </html>
</richcontent> </richcontent>
</node> </node>
<node CREATED="1446482059174" ID="ID_1693967692" MODIFIED="1446482059174" TEXT="Ubuntu/Trusty (14.LTS) : i386 and x86_64 (currently broken)"/> <node CREATED="1446482059174" ID="ID_1693967692" MODIFIED="1446482059174" TEXT="Ubuntu/Trusty (14.LTS) : i386 and x86_64 (currently broken)">
<node CREATED="1446509774664" ID="ID_458867123" MODIFIED="1446509787931" TEXT="Ausnahmen f&#xfc;r libgdl-3-dev 3.8"/>
</node>
<node CREATED="1446482059174" ID="ID_1906801117" MODIFIED="1446482059174" TEXT="Ubuntu/Vivid (15.04) : i386 (planned)"/> <node CREATED="1446482059174" ID="ID_1906801117" MODIFIED="1446482059174" TEXT="Ubuntu/Vivid (15.04) : i386 (planned)"/>
<node CREATED="1446482059175" ID="ID_1107419581" MODIFIED="1446482059175" TEXT="Ubuntu/Wily (15.10) : x86_64 (planned)"/> <node CREATED="1446482059175" ID="ID_1107419581" MODIFIED="1446482059175" TEXT="Ubuntu/Wily (15.10) : x86_64 (planned)"/>
<node CREATED="1446482059175" ID="ID_904094860" MODIFIED="1446482059175" TEXT="Mint/Rafaela (17.2.LTS) : x86_64 (planned)"/> <node CREATED="1446482059175" ID="ID_904094860" MODIFIED="1446482059175" TEXT="Mint/Rafaela (17.2.LTS) : x86_64 (planned)"/>
@ -2843,6 +2917,19 @@
</richcontent> </richcontent>
<icon BUILTIN="help"/> <icon BUILTIN="help"/>
</node> </node>
<node CREATED="1446505367113" ID="ID_1119934206" LINK="http://issues.lumiera.org/ticket/971" MODIFIED="1446505429946">
<richcontent TYPE="NODE"><html>
<head>
</head>
<body>
<p>
hardening-flags! <font color="#ba015b">#971</font>
</p>
</body>
</html>
</richcontent>
</node>
</node> </node>
</node> </node>
<node CREATED="1446356359992" HGAP="9" ID="ID_1850896628" MODIFIED="1446480440058" POSITION="left" TEXT="QA" VSHIFT="69"> <node CREATED="1446356359992" HGAP="9" ID="ID_1850896628" MODIFIED="1446480440058" POSITION="left" TEXT="QA" VSHIFT="69">