Beispiel #1
0
Datei: javaw.py Projekt: zsx/waf
def check_java_class(self, classname, with_classpath=None):
	"""Check if the specified java class is installed"""

	import shutil

	javatestdir = '.waf-javatest'

	classpath = javatestdir
	if self.env['CLASSPATH']:
		classpath += os.pathsep + self.env['CLASSPATH']
	if isinstance(with_classpath, str):
		classpath += os.pathsep + with_classpath

	shutil.rmtree(javatestdir, True)
	os.mkdir(javatestdir)

	java_file = open(os.path.join(javatestdir, 'Test.java'), 'w')
	java_file.write(class_check_source)
	java_file.close()

	# Compile the source
	Utils.exec_command(self.env['JAVAC'] + [os.path.join(javatestdir, 'Test.java')], shell=False)

	# Try to run the app
	cmd = self.env['JAVA'] + ['-cp', classpath, 'Test', classname]
	self.to_log("%s\n" % str(cmd))
	found = Utils.exec_command(cmd, shell=False, log=self.log)

	self.msg('Checking for java class %s' % classname, not found)

	shutil.rmtree(javatestdir, True)

	return found
Beispiel #2
0
Datei: glib2.py Projekt: zsx/waf
def genmarshal_func(self):

	bld = self.inputs[0].__class__.ctx

	get = self.env.get_flat
	cmd1 = "%s %s --prefix=%s --header > %s" % (
		get('GLIB_GENMARSHAL'),
		self.inputs[0].srcpath(self.env),
		get('GLIB_GENMARSHAL_PREFIX'),
		self.outputs[0].abspath(self.env)
	)

	ret = bld.exec_command(cmd1)
	if ret: return ret

	#print self.outputs[1].abspath(self.env)
	f = open(self.outputs[1].abspath(self.env), 'wb')
	c = '''#include "%s"\n''' % self.outputs[0].name
	f.write(c.encode("utf-8"))
	f.close()

	cmd2 = "%s %s --prefix=%s --body >> %s" % (
		get('GLIB_GENMARSHAL'),
		self.inputs[0].srcpath(self.env),
		get('GLIB_GENMARSHAL_PREFIX'),
		self.outputs[1].abspath(self.env)
	)
	ret = Utils.exec_command(cmd2)
	if ret: return ret