jack2 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

317 lines
11KB

  1. #
  2. # Copyright (C) 2008 Nedko Arnaudov
  3. #
  4. # This program is free software: you can redistribute it and/or modify
  5. # it under the terms of the GNU General Public License as published by
  6. # the Free Software Foundation, version 2 of the License.
  7. #
  8. # This program is distributed in the hope that it will be useful,
  9. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. # GNU General Public License for more details.
  12. #
  13. # You should have received a copy of the GNU General Public License
  14. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. #
  16. import os
  17. from string import Template
  18. from SCons.Script.SConscript import SConsEnvironment
  19. def pkg_config_get_value(module, args):
  20. return env.backtick('pkg-config ' + args + ' ' + module).strip()
  21. def merge_pkg_config_append_string(env, envvar, module, args):
  22. value = pkg_config_get_value(module, args)
  23. #print value
  24. if env._dict.has_key(envvar):
  25. env._dict[envvar] += value
  26. else:
  27. env._dict[envvar] = value
  28. def merge_pkg_config_libs(env, module):
  29. for lib in pkg_config_get_value(module, "--libs").split(' '):
  30. if lib[:2] == '-l':
  31. env._dict['LIBS'].append(lib[2:])
  32. elif lib[:2] == '-L':
  33. env._dict['LIBPATH'].append(lib[2:])
  34. def merge_pkg_config_variable(env, envvar, module, pkgvar):
  35. merge_pkg_config_append_string(env, envvar, module, '--variable=' + pkgvar)
  36. def merge_pkg_config_std(env, module):
  37. merge_pkg_config_append_string(env, 'CCFLAGS', module, '--cflags')
  38. merge_pkg_config_libs(env, module)
  39. Import('env')
  40. jackenv = env.Copy()
  41. #print "LIBS (orig): " + repr(jackenv['LIBS'])
  42. #print "SERVERLIB: " + repr(jackenv['SERVERLIB'])
  43. jackenv.Append(LIBS=[jackenv['SERVERLIB'], 'dl', 'expat'])
  44. merge_pkg_config_variable(jackenv, 'DBUS_SERVICES_DIR', 'dbus-1', 'session_bus_services_dir')
  45. merge_pkg_config_std(jackenv, 'dbus-1')
  46. #print "CFLAGS: " + jackenv['CFLAGS']
  47. #print "CCFLAGS: " + jackenv['CCFLAGS']
  48. #print "LINKFLAGS: " + repr(jackenv['LINKFLAGS'])
  49. #print "LIBPATH: " + repr(jackenv['LIBPATH'])
  50. #print "LIBS: " + repr(jackenv['LIBS'])
  51. #print "DBUS_SERVICES_DIR: " + jackenv['DBUS_SERVICES_DIR']
  52. jackenv.Install(env['BINDIR'], jackenv.Program('jackdbus', [
  53. 'jackdbus.c',
  54. 'controller.c',
  55. 'controller_iface_configure.c',
  56. 'controller_iface_control.c',
  57. 'controller_iface_introspectable.c',
  58. 'controller_iface_patchbay.c',
  59. 'controller_iface_transport.c',
  60. 'xml.c',
  61. 'xml_expat.c',
  62. # 'xml_libxml.c',
  63. # 'xml_nop.c',
  64. 'xml_write_raw.c',
  65. ]))
  66. jackenv.Alias('install', env['BINDIR'])
  67. jackenv.ScanReplace('org.jackaudio.service.in')
  68. jackenv.Install(jackenv['DBUS_SERVICES_DIR'], 'org.jackaudio.service')
  69. jackenv.Alias('install', jackenv['DBUS_SERVICES_DIR'])
  70. #
  71. # Copyright (C) 2008 Nedko Arnaudov
  72. #
  73. # This program is free software: you can redistribute it and/or modify
  74. # it under the terms of the GNU General Public License as published by
  75. # the Free Software Foundation, version 2 of the License.
  76. #
  77. # This program is distributed in the hope that it will be useful,
  78. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  79. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  80. # GNU General Public License for more details.
  81. #
  82. # You should have received a copy of the GNU General Public License
  83. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  84. #
  85. import os
  86. from string import Template
  87. from SCons.Script.SConscript import SConsEnvironment
  88. def pkg_config_get_value(module, args):
  89. return env.backtick('pkg-config ' + args + ' ' + module).strip()
  90. def merge_pkg_config_append_string(env, envvar, module, args):
  91. value = pkg_config_get_value(module, args)
  92. #print value
  93. if env._dict.has_key(envvar):
  94. env._dict[envvar] += value
  95. else:
  96. env._dict[envvar] = value
  97. def merge_pkg_config_libs(env, module):
  98. for lib in pkg_config_get_value(module, "--libs").split(' '):
  99. if lib[:2] == '-l':
  100. env._dict['LIBS'].append(lib[2:])
  101. elif lib[:2] == '-L':
  102. env._dict['LIBPATH'].append(lib[2:])
  103. def merge_pkg_config_variable(env, envvar, module, pkgvar):
  104. merge_pkg_config_append_string(env, envvar, module, '--variable=' + pkgvar)
  105. def merge_pkg_config_std(env, module):
  106. merge_pkg_config_append_string(env, 'CCFLAGS', module, '--cflags')
  107. merge_pkg_config_libs(env, module)
  108. Import('env')
  109. jackenv = env.Copy()
  110. #print "LIBS (orig): " + repr(jackenv['LIBS'])
  111. #print "SERVERLIB: " + repr(jackenv['SERVERLIB'])
  112. jackenv.Append(LIBS=[jackenv['SERVERLIB'], 'dl', 'expat'])
  113. merge_pkg_config_variable(jackenv, 'DBUS_SERVICES_DIR', 'dbus-1', 'session_bus_services_dir')
  114. merge_pkg_config_std(jackenv, 'dbus-1')
  115. #print "CFLAGS: " + jackenv['CFLAGS']
  116. #print "CCFLAGS: " + jackenv['CCFLAGS']
  117. #print "LINKFLAGS: " + repr(jackenv['LINKFLAGS'])
  118. #print "LIBPATH: " + repr(jackenv['LIBPATH'])
  119. #print "LIBS: " + repr(jackenv['LIBS'])
  120. #print "DBUS_SERVICES_DIR: " + jackenv['DBUS_SERVICES_DIR']
  121. jackenv.Install(env['BINDIR'], jackenv.Program('jackdbus', [
  122. 'jackdbus.c',
  123. 'controller.c',
  124. 'controller_iface_configure.c',
  125. 'controller_iface_control.c',
  126. 'controller_iface_introspectable.c',
  127. 'controller_iface_patchbay.c',
  128. 'controller_iface_transport.c',
  129. 'xml.c',
  130. 'xml_expat.c',
  131. # 'xml_libxml.c',
  132. # 'xml_nop.c',
  133. 'xml_write_raw.c',
  134. ]))
  135. jackenv.Alias('install', env['BINDIR'])
  136. jackenv.ScanReplace('org.jackaudio.service.in')
  137. jackenv.Install(jackenv['DBUS_SERVICES_DIR'], 'org.jackaudio.service')
  138. jackenv.Alias('install', jackenv['DBUS_SERVICES_DIR'])
  139. #
  140. # Copyright (C) 2008 Nedko Arnaudov
  141. #
  142. # This program is free software: you can redistribute it and/or modify
  143. # it under the terms of the GNU General Public License as published by
  144. # the Free Software Foundation, version 2 of the License.
  145. #
  146. # This program is distributed in the hope that it will be useful,
  147. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  148. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  149. # GNU General Public License for more details.
  150. #
  151. # You should have received a copy of the GNU General Public License
  152. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  153. #
  154. import os
  155. from string import Template
  156. from SCons.Script.SConscript import SConsEnvironment
  157. def pkg_config_get_value(module, args):
  158. return env.backtick('pkg-config ' + args + ' ' + module).strip()
  159. def merge_pkg_config_append_string(env, envvar, module, args):
  160. value = pkg_config_get_value(module, args)
  161. #print value
  162. if env._dict.has_key(envvar):
  163. env._dict[envvar] += value
  164. else:
  165. env._dict[envvar] = value
  166. def merge_pkg_config_libs(env, module):
  167. for lib in pkg_config_get_value(module, "--libs").split(' '):
  168. if lib[:2] == '-l':
  169. env._dict['LIBS'].append(lib[2:])
  170. elif lib[:2] == '-L':
  171. env._dict['LIBPATH'].append(lib[2:])
  172. def merge_pkg_config_variable(env, envvar, module, pkgvar):
  173. merge_pkg_config_append_string(env, envvar, module, '--variable=' + pkgvar)
  174. def merge_pkg_config_std(env, module):
  175. merge_pkg_config_append_string(env, 'CCFLAGS', module, '--cflags')
  176. merge_pkg_config_libs(env, module)
  177. Import('env')
  178. jackenv = env.Copy()
  179. #print "LIBS (orig): " + repr(jackenv['LIBS'])
  180. #print "SERVERLIB: " + repr(jackenv['SERVERLIB'])
  181. jackenv.Append(LIBS=[jackenv['SERVERLIB'], 'dl', 'expat'])
  182. merge_pkg_config_variable(jackenv, 'DBUS_SERVICES_DIR', 'dbus-1', 'session_bus_services_dir')
  183. merge_pkg_config_std(jackenv, 'dbus-1')
  184. #print "CFLAGS: " + jackenv['CFLAGS']
  185. #print "CCFLAGS: " + jackenv['CCFLAGS']
  186. #print "LINKFLAGS: " + repr(jackenv['LINKFLAGS'])
  187. #print "LIBPATH: " + repr(jackenv['LIBPATH'])
  188. #print "LIBS: " + repr(jackenv['LIBS'])
  189. #print "DBUS_SERVICES_DIR: " + jackenv['DBUS_SERVICES_DIR']
  190. jackenv.Install(env['BINDIR'], jackenv.Program('jackdbus', [
  191. 'jackdbus.c',
  192. 'controller.c',
  193. 'controller_iface_configure.c',
  194. 'controller_iface_control.c',
  195. 'controller_iface_introspectable.c',
  196. 'controller_iface_patchbay.c',
  197. 'controller_iface_transport.c',
  198. 'xml.c',
  199. 'xml_expat.c',
  200. # 'xml_libxml.c',
  201. # 'xml_nop.c',
  202. 'xml_write_raw.c',
  203. ]))
  204. jackenv.Alias('install', env['BINDIR'])
  205. jackenv.ScanReplace('org.jackaudio.service.in')
  206. jackenv.Install(jackenv['DBUS_SERVICES_DIR'], 'org.jackaudio.service')
  207. jackenv.Alias('install', jackenv['DBUS_SERVICES_DIR'])
  208. #
  209. # Copyright (C) 2008 Nedko Arnaudov
  210. #
  211. # This program is free software: you can redistribute it and/or modify
  212. # it under the terms of the GNU General Public License as published by
  213. # the Free Software Foundation, version 2 of the License.
  214. #
  215. # This program is distributed in the hope that it will be useful,
  216. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  217. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  218. # GNU General Public License for more details.
  219. #
  220. # You should have received a copy of the GNU General Public License
  221. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  222. #
  223. import os
  224. from string import Template
  225. from SCons.Script.SConscript import SConsEnvironment
  226. def pkg_config_get_value(module, args):
  227. return env.backtick('pkg-config ' + args + ' ' + module).strip()
  228. def merge_pkg_config_append_string(env, envvar, module, args):
  229. value = pkg_config_get_value(module, args)
  230. #print value
  231. if env._dict.has_key(envvar):
  232. env._dict[envvar] += value
  233. else:
  234. env._dict[envvar] = value
  235. def merge_pkg_config_libs(env, module):
  236. for lib in pkg_config_get_value(module, "--libs").split(' '):
  237. if lib[:2] == '-l':
  238. env._dict['LIBS'].append(lib[2:])
  239. elif lib[:2] == '-L':
  240. env._dict['LIBPATH'].append(lib[2:])
  241. def merge_pkg_config_variable(env, envvar, module, pkgvar):
  242. merge_pkg_config_append_string(env, envvar, module, '--variable=' + pkgvar)
  243. def merge_pkg_config_std(env, module):
  244. merge_pkg_config_append_string(env, 'CCFLAGS', module, '--cflags')
  245. merge_pkg_config_libs(env, module)
  246. Import('env')
  247. jackenv = env.Copy()
  248. #print "LIBS (orig): " + repr(jackenv['LIBS'])
  249. #print "SERVERLIB: " + repr(jackenv['SERVERLIB'])
  250. jackenv.Append(LIBS=[jackenv['SERVERLIB'], 'dl', 'expat'])
  251. merge_pkg_config_variable(jackenv, 'DBUS_SERVICES_DIR', 'dbus-1', 'session_bus_services_dir')
  252. merge_pkg_config_std(jackenv, 'dbus-1')
  253. #print "CFLAGS: " + jackenv['CFLAGS']
  254. #print "CCFLAGS: " + jackenv['CCFLAGS']
  255. #print "LINKFLAGS: " + repr(jackenv['LINKFLAGS'])
  256. #print "LIBPATH: " + repr(jackenv['LIBPATH'])
  257. #print "LIBS: " + repr(jackenv['LIBS'])
  258. #print "DBUS_SERVICES_DIR: " + jackenv['DBUS_SERVICES_DIR']
  259. jackenv.Install(env['BINDIR'], jackenv.Program('jackdbus', [
  260. 'jackdbus.c',
  261. 'controller.c',
  262. 'controller_iface_configure.c',
  263. 'controller_iface_control.c',
  264. 'controller_iface_introspectable.c',
  265. 'controller_iface_patchbay.c',
  266. 'controller_iface_transport.c',
  267. 'xml.c',
  268. 'xml_expat.c',
  269. # 'xml_libxml.c',
  270. # 'xml_nop.c',
  271. 'xml_write_raw.c',
  272. ]))
  273. jackenv.Alias('install', env['BINDIR'])
  274. jackenv.ScanReplace('org.jackaudio.service.in')
  275. jackenv.Install(jackenv['DBUS_SERVICES_DIR'], 'org.jackaudio.service')
  276. jackenv.Alias('install', jackenv['DBUS_SERVICES_DIR'])