[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdelibs/bksys
From: Christian Ehrlicher <Ch.Ehrlicher () gmx ! de>
Date: 2006-02-07 17:26:39
Message-ID: 1139333199.782357.13399.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 506822 by chehrlic:
fix & sync with other lib*.py
M +39 -46 libgif.py
--- trunk/KDE/kdelibs/bksys/libgif.py #506821:506822
@@ -5,62 +5,55 @@
def generate(env):
- def Check_giflib(context):
- import SCons.Util
-
- gifsource = """
-#include <gif_lib.h>
-
-int main(int argc, char **argv) {
- if (GIF_OK != 1) {
- return 1;
- }
- return 0;
-}
-"""
-
- env['CACHED_GIFLIB'] = 0
- lastLIBS = ''
- if env.has_key('LIBS'):
- lastLIBS = env['LIBS']
-
- context.Message('Checking for giflib ... ')
- for lib in [ 'ungif', 'gif' ]:
-
- env.Replace(LIBS = [lib])
-
- ret = conf.TryLink(gifsource, '.c')
- if ret:
- env['CXXFLAGS_GIFLIB'] = ['-DHAVE_GIFLIB']
- env['LINKFLAGS_GIFLIB'] = ['-l' + lib]
- env['CACHED_GIFLIB'] = ret
- break
-
- if lastLIBS:
- env.Replace(LIBS = lastLIBS)
- context.Result(env['CACHED_GIFLIB'])
- return env['CACHED_GIFLIB']
-
from SCons.Options import Options
+ from SCons.Tool import Tool
import os
- optionFile = env['CACHEDIR'] + 'giflib.cache.py'
+ optionFile = env['CACHEDIR'] + 'libgif.cache.py'
opts = Options(optionFile)
opts.AddOptions(
- ('CACHED_GIFLIB', 'Whether the GIF library is available'),
- ('CXXFLAGS_GIFLIB',''),
- ('LINKFLAGS_GIFLIB',''),
+ ('CACHED_GIF', 'Whether libgif is available'),
+ ('CXXFLAGS_GIF',''),
+ ('CCFLAGS_GIF',''),
+ ('LINKFLAGS_GIF',''),
+ ('CPPPATH_GIF',''),
+ ('INCLUDES_GIF',''),
+ ('LIB_GIF',''),
+ ('LIBPATH_GIF',''),
)
opts.Update(env)
- if not env['HELP'] and (env['_CONFIGURE_'] or not env.has_key('CACHED_GIFLIB')):
- conf = env.Configure( custom_tests = { 'Check_giflib' : Check_giflib } )
- if not conf.Check_giflib():
- print 'giflib not found.'
+ if not env['HELP'] and (env['_CONFIGURE_'] or not env.has_key('CACHED_GIF')):
+ pkgs = Tool('pkgconfig', ['./bksys'])
+ pkgs.generate(env)
+
+ have_lib = 0
+ if env['HAVE_PKGCONFIG'] == 0:
+ conf = env.Configure()
+ if conf.CheckHeader('gif_lib.h'):
+ if conf.CheckLib('gif'):
+ conf.env['INCLUDES_GIF'] = [ 'gif_lib.h' ]
+ conf.env['LIB_GIF'] = [ 'gif' ]
+ have_lib = 1
+ elif conf.CheckLib('giflib'):
+ conf.env['INCLUDES_GIF'] = [ 'gif_lib.h' ]
+ conf.env['LIB_GIF'] = [ 'giflib' ]
+ have_lib = 1
+ if conf.CheckLib('ungif'):
+ conf.env['INCLUDES_GIF'] = [ 'gif_lib.h' ]
+ conf.env['LIB_GIF'] = [ 'ungif' ]
+ have_lib = 1
+ elif conf.CheckLib('libungif'):
+ conf.env['INCLUDES_GIF'] = [ 'gif_lib.h' ]
+ conf.env['LIB_GIF'] = [ 'libungif' ]
+ have_lib = 1
+ env = conf.Finish()
else:
- print 'using ' + env['LINKFLAGS_GIFLIB'][0] + ' to link giflib'
+ have_lib = env.pkgConfig_findPackage('GIF', 'libgif', '4.0')
+ if not have_lib:
+ have_lib = env.pkgConfig_findPackage('GIF', 'libungif', '4.0')
- env = conf.Finish()
+ env.write_lib_header( 'libgif', have_lib, False )
opts.Save(optionFile, env)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic