[geany/geany] 07dacb: waf: Improve passing of export and visibility flags
Colomban Wendling
git-noreply at xxxxx
Fri Apr 10 14:16:19 UTC 2015
Branch: refs/heads/master
Author: Colomban Wendling <ban at herbesfolles.org>
Committer: Colomban Wendling <ban at herbesfolles.org>
Date: Fri, 10 Apr 2015 14:16:19 UTC
Commit: 07dacb66d23b58b34eee51aac28a8ad2fcf5693c
https://github.com/geany/geany/commit/07dacb66d23b58b34eee51aac28a8ad2fcf5693c
Log Message:
-----------
waf: Improve passing of export and visibility flags
Modified Paths:
--------------
wscript
Modified: wscript
31 lines changed, 16 insertions(+), 15 deletions(-)
===================================================================
@@ -309,16 +309,18 @@ but you then may not have a local copy of the HTML manual.'''
# GEANY_EXPORT_SYMBOL and GEANY_API_SYMBOL
if is_win32:
- geany_symbol_flags = ['-DGEANY_EXPORT_SYMBOL=__declspec(dllexport)']
+ geanyexport_cflags = []
+ geanyexport_defines = ['GEANY_EXPORT_SYMBOL=__declspec(dllexport)']
elif visibility_hidden_supported:
- geany_symbol_flags = ['-fvisibility=hidden',
- '-DGEANY_EXPORT_SYMBOL=__attribute__((visibility("default")))']
- conf.env['CFLAGS_plugin'] = '-fvisibility=default'
+ geanyexport_cflags = ['-fvisibility=hidden']
+ geanyexport_defines = ['GEANY_EXPORT_SYMBOL=__attribute__((visibility("default")))']
else: # unknown, define to nothing
- geany_symbol_flags = ['-DGEANY_EXPORT_SYMBOL=']
- geany_symbol_flags.append('-DGEANY_API_SYMBOL=GEANY_EXPORT_SYMBOL')
- conf.env.append_value('CFLAGS', geany_symbol_flags)
- conf.env.append_value('CXXFLAGS', geany_symbol_flags)
+ geanyexport_cflags = []
+ geanyexport_defines = ['GEANY_EXPORT_SYMBOL=']
+ geanyexport_defines.append('GEANY_API_SYMBOL=GEANY_EXPORT_SYMBOL')
+ conf.env['DEFINES_geanyexport'] = geanyexport_defines
+ conf.env['CFLAGS_geanyexport'] = geanyexport_cflags
+ conf.env['CXXFLAGS_geanyexport'] = geanyexport_cflags
# some more compiler flags
conf.env.append_value('CFLAGS', ['-DHAVE_CONFIG_H'])
@@ -401,7 +403,6 @@ def build(bld):
includes = ['.', 'src/', 'scintilla/include', 'tagmanager/src'],
defines = 'G_LOG_DOMAIN="%s"' % plugin_name,
target = plugin_name,
- cflags = bld.env['CFLAGS_plugin'],
uselib = ['GTK', 'GLIB', 'GMODULE'] + uselib_add,
use = ['geany'],
install_path = instpath)
@@ -414,7 +415,7 @@ def build(bld):
target = 'ctags',
includes = ['.', 'tagmanager', 'tagmanager/ctags'],
defines = 'G_LOG_DOMAIN="CTags"',
- uselib = ['cshlib', 'GLIB'])
+ uselib = ['cshlib', 'GLIB', 'geanyexport'])
# Tagmanager
bld.objects(
@@ -424,7 +425,7 @@ def build(bld):
target = 'tagmanager',
includes = ['.', 'tagmanager', 'tagmanager/ctags'],
defines = ['GEANY_PRIVATE', 'G_LOG_DOMAIN="Tagmanager"'],
- uselib = ['cshlib', 'GTK', 'GLIB'])
+ uselib = ['cshlib', 'GTK', 'GLIB', 'geanyexport'])
# MIO
bld.objects(
@@ -434,7 +435,7 @@ def build(bld):
target = 'mio',
includes = ['.', 'tagmanager/mio/'],
defines = 'G_LOG_DOMAIN="MIO"',
- uselib = ['cshlib', 'GTK', 'GLIB'])
+ uselib = ['cshlib', 'GTK', 'GLIB', 'geanyexport'])
# Scintilla
files = bld.srcnode.ant_glob('scintilla/**/*.cxx', src=True, dir=False)
@@ -445,7 +446,7 @@ def build(bld):
target = 'scintilla',
source = scintilla_sources,
includes = ['.', 'scintilla/include', 'scintilla/src', 'scintilla/lexlib'],
- uselib = ['cshlib', 'cxxshlib', 'GTK', 'GLIB', 'GMODULE', 'M'])
+ uselib = ['cshlib', 'cxxshlib', 'GTK', 'GLIB', 'GMODULE', 'M', 'geanyexport'])
# Geany
if bld.env['HAVE_VTE'] == 1:
@@ -488,7 +489,7 @@ def build(bld):
source = geany_sources,
includes = ['.', 'scintilla/include', 'tagmanager/src', 'src'],
defines = ['G_LOG_DOMAIN="Geany"', 'GEANY_PRIVATE'],
- uselib = base_uselibs,
+ uselib = base_uselibs + ['geanyexport'],
use = ['scintilla', 'ctags', 'tagmanager', 'mio'],
linkflags = bld.env['LINKFLAGS_cprogram'],
vnum = GEANY_LIB_VERSION,
@@ -502,7 +503,7 @@ def build(bld):
source = ['src/main.c'],
includes = ['.', 'scintilla/include', 'tagmanager/src'],
defines = ['G_LOG_DOMAIN="Geany"', 'GEANY_PRIVATE'],
- uselib = base_uselibs,
+ uselib = base_uselibs + ['geanyexport'],
use = ['geany'])
if not is_win32:
# http://www.freehackers.org/~tnagy/testdoc/single.html#common_c
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Commits
mailing list