[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/devtools/waf
From:       Thomas Nagy <tnagyemail-mail () yahoo ! fr>
Date:       2006-07-29 22:18:59
Message-ID: 1154211539.795046.8286.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 567722 by tnagy:

packaging, gnome


 M  +3 -0      demos/adv/wscript  
 M  +1 -0      demos/gnome/pixmaps/wscript_build  
 A             demos/gnome/po (directory)  
 A             demos/gnome/po/wscript  
 M  +1 -1      demos/gnome/src/hello.c  
 M  +10 -4     demos/gnome/wscript  
 M  +36 -3     wafadmin/Tools/gnome.py  


--- trunk/playground/devtools/waf/demos/adv/wscript #567721:567722
@@ -18,6 +18,9 @@
 	bld.set_variants(['default', 'variant2'])
 	bld.add_subdirs('src complex variant')
 
+def package(bld):
+	pass
+
 def configure(conf):
 	# the 'checks' tool adds new method to the conf object like 'checkEndian' below
 	conf.checkTool(['checks', 'gcc', 'g++', 'dang'])
--- trunk/playground/devtools/waf/demos/gnome/pixmaps/wscript_build #567721:567722
@@ -2,5 +2,6 @@
 # encoding: utf-8
 # Thomas Nagy, 2006 (ita)
 
+# and example with file globbing would be better, but for now it will stay like this
 install_files('DATADIR', 'icons/hicolor/48x48/apps', 'gnome-hello-logo.png')
 
--- trunk/playground/devtools/waf/demos/gnome/src/hello.c #567721:567722
@@ -97,7 +97,7 @@
 
   program = gnome_program_init (PACKAGE, VERSION, LIBGNOMEUI_MODULE,
 				argc, argv, 
-				GNOME_PARAM_GOPTION_CONTEXT, context,
+//				GNOME_PARAM_GOPTION_CONTEXT, context,
 				GNOME_PARAM_APP_DATADIR,DATADIR,
 				NULL);
 
--- trunk/playground/devtools/waf/demos/gnome/wscript #567721:567722
@@ -6,7 +6,7 @@
 import Params
 
 # the following two variables are used by the target "waf dist"
-VERSION='0.0.1'
+VERSION='0.0.2'
 APPNAME='gnome_test'
 
 # these variables are mandatory ('/' are converted automatically)
@@ -15,10 +15,10 @@
 
 def build(bld):
 	# process subfolders from here
-	bld.add_subdirs('src')
+	bld.add_subdirs('src pixmaps po')
 
 def configure(conf):
-	conf.checkTool(['gcc', 'gnome'])
+	conf.checkTool('gcc gnome')
 
 	conf.checkPkg('libgnome-2.0',        destvar='GNOME',    vnum='2.10.0')
 	conf.checkPkg('libgnomeui-2.0',      destvar='GNOMEUI',  vnum='2.10.0')
@@ -37,6 +37,8 @@
 	datadir= '/usr/include'
 	localedir = datadir+os.sep+'locale'
 
+	conf.env['POCOM'] = 'msgfmt'
+
 	conf.addDefine('VERSION', '"%s"' % VERSION)
 	conf.addDefine('DATADIR', '"%s"' % datadir)
 	conf.addDefine('GNOMELOCALEDIR', '"%s"' % localedir)
@@ -44,8 +46,12 @@
 	conf.addDefine('GETTEXT_PACKAGE', '"gnome-hello-2.0"')
 	conf.addDefine('PACKAGE', '"gnome-hello"')
 
-	conf.addDefine('GNOME_PARAM_GOPTION_CONTEXT', '"gnome-hello"')
 
+	conf.env.appendValue('CCFLAGS', '-DHAVE_CONFIG_H')
+
+	# FIXME !!!!! this define looks necessary
+	#conf.addDefine('GNOME_PARAM_GOPTION_CONTEXT', '"goption-context"')
+
 	conf.writeConfigHeader('config.h')
 
 def set_options(opt):
--- trunk/playground/devtools/waf/wafadmin/Tools/gnome.py #567721:567722
@@ -2,11 +2,44 @@
 # encoding: utf-8
 # Thomas Nagy, 2006 (ita)
 
-# TODO more to come
+import os
+import Object, Action
 
+# translations
+class gnome_translations(Object.genobj):
+	def __init__(self, appname):
+		Object.genobj.__init__(self, 'other')
+		self.m_tasks=[]
+		self.m_appname = appname
+	def apply(self):
+		for file in self.m_current_path.m_files:
+			try:
+				base, ext = os.path.splitext(file.m_name)
+				if ext != '.po': continue
+
+				task = self.create_task('po', self.env, 2)
+				task.set_inputs(file)
+				task.set_outputs(file.change_ext('.gmo'))
+				self.m_tasks.append(task)
+			except: pass
+	def install(self):
+		destfilename = self.m_appname+'.mo'
+
+		current = Params.g_build.m_curdirnode
+		for file in self.m_current_path.m_files:
+			lang, ext = os.path.splitext(file.m_name)
+			if ext != '.po': continue
+
+			node = self.m_current_path.find_node( (lang+'.gmo').split('/') )
+			orig = node.relpath_gen(current)
+
+			destfile = os.sep.join([lang, 'LC_MESSAGES', destfilename])
+			Common.install_as('GNOME_LOCALE', destfile, orig, self.env)
+
+
 def setup(env):
-	# nothing to do yet
-	return
+	Action.simple_action('po', '${POCOM} -o ${TGT} ${SRC}', color='BLUE')
+	Object.register('gnome_translations', gnome_translations)
 
 def detect(env):
 	# nothing to do yet
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic