2
0
Fork 0
lighttpd2/src/wscript

160 lines
5.3 KiB
Plaintext
Raw Normal View History

2008-06-24 19:19:20 +00:00
#! /usr/bin/env python
# encoding: utf-8
2008-06-30 14:24:29 +00:00
#import Object, Params, os, sys
import Options
2008-06-24 19:19:20 +00:00
2008-07-18 22:11:08 +00:00
common_uselib = 'glib gthread'
2008-06-24 19:19:20 +00:00
common_source='''
2008-06-30 10:25:01 +00:00
actions.c
2008-06-28 18:37:28 +00:00
base.c
chunk.c
chunk_parser.c
2008-06-29 15:48:28 +00:00
condition.c
2008-07-25 20:38:42 +00:00
condition_parsers.rl
2008-07-08 16:51:03 +00:00
config_parser.rl
2008-08-05 15:08:32 +00:00
connection.c
http_headers.c
2008-06-30 14:24:29 +00:00
http_request_parser.rl
2008-06-24 19:19:20 +00:00
log.c
2008-08-05 15:08:32 +00:00
network.c
2008-06-28 18:37:28 +00:00
options.c
2008-07-08 19:29:02 +00:00
plugin.c
request.c
2008-08-06 18:46:42 +00:00
response.c
server.c
2008-06-24 19:19:20 +00:00
sys-files.c
2008-06-28 18:37:28 +00:00
sys-socket.c
2008-08-05 15:08:32 +00:00
utils.c
plugin_core.c
2008-06-24 19:19:20 +00:00
'''
2008-06-29 15:48:28 +00:00
common_source_lua='''
actions_lua.c
condition_lua.c
config_lua.c
2008-06-29 15:48:28 +00:00
options_lua.c
'''
2008-06-24 19:19:20 +00:00
main_source = '''
lighttpd.c
2008-06-24 19:19:20 +00:00
'''
#def node_in_same_dir(node, name):
#p = node.m_parent
#n = p.m_files_lookup.get(name, None)
#if not n: n = p.m_build_lookup.get(name, None)
#if n: return n
#newnode = Node(name, p)
#p.m_build_lookup[newnode.m_name]=newnode
#return newnode
#def lemon_file(self, node):
#lemon_task = self.create_task('lemon', nice=40)
#lemon_task.set_inputs([node, node_in_same_dir(node, 'lempar.c')])
2008-07-08 16:51:03 +00:00
2008-06-24 19:19:20 +00:00
#newnodes = [node.change_ext('.c'), node.change_ext('.h')]
#lemon_task.set_outputs(newnodes)
2008-07-08 16:51:03 +00:00
2008-06-24 19:19:20 +00:00
#task = self.create_task(self.m_type_initials)
#task.set_inputs(lemon_task.m_outputs[0])
#task.set_outputs(node.change_ext('.o'))
def lighty_mod(bld, target, src, uselib = '', option = ''):
if option and not getattr(Options.options, option): return
2008-06-24 19:19:20 +00:00
mod = bld.new_task_gen('cc', 'plugin')
mod.target = target
mod.source = src
mod.uselib += 'lightymod ' + common_uselib + uselib
def build(bld):
env = bld.env
2008-07-08 16:51:03 +00:00
2008-06-24 19:19:20 +00:00
# 1. Build lemon (parser generator)
#lemon = bld.new_task_gen('cc', 'program')
#lemon.install_var = 0
#lemon.source = 'lemon.c'
#lemon.target = 'lemon'
2008-07-08 16:51:03 +00:00
2008-06-24 19:19:20 +00:00
#bld.add_group('lemon')
#lem_task = lemon.m_tasks[1]
#lem_node = lem_task.m_outputs[0]
#lemon_exec = lem_node.abspath(lem_task.m_env)
#Action.simple_action('lemon', 'cd ${TGT[0].bld_dir(env)}; ' + lemon_exec + ' ${SRC[0].abspath()} ${SRC[1].abspath()}', color='BLUE')
2008-07-08 16:51:03 +00:00
2008-06-24 19:19:20 +00:00
# hook .y to lemon
#Object.hook('cc', 'LEMON_EXT', lemon_file)
2008-07-08 16:51:03 +00:00
2008-06-24 19:19:20 +00:00
main = bld.new_task_gen('cc', 'program')
main.name = 'lighttpd'
2008-07-25 21:12:40 +00:00
main.source = common_source + main_source
if env['LIB_lua']:
main.source += common_source_lua
2008-06-24 19:19:20 +00:00
main.target='lighttpd' + env['APPEND']
2008-08-06 21:50:00 +00:00
main.uselib += 'lighty dl ev openssl pcre lua ' + common_uselib + ' lightylast'
2008-07-17 15:35:50 +00:00
main.includes = '.'
2008-07-08 16:51:03 +00:00
2008-06-24 19:19:20 +00:00
#lighty_mod(bld, 'mod_access', 'mod_access.c')
#lighty_mod(bld, 'mod_alias', 'mod_alias.c')
#lighty_mod(bld, 'mod_dirlisting', 'mod_dirlisting.c', uselib = 'pcre')
#lighty_mod(bld, 'mod_staticfile', 'mod_staticfile.c')
#lighty_mod(bld, 'mod_indexfile', 'mod_indexfile.c')
#lighty_mod(bld, 'mod_setenv', 'mod_setenv.c')
#lighty_mod(bld, 'mod_rrdtool', 'mod_rrdtool.c')
#lighty_mod(bld, 'mod_usertrack', 'mod_usertrack.c')
#lighty_mod(bld, 'mod_proxy_core', '''
#mod_proxy_core.c mod_proxy_core_pool.c mod_proxy_core_backend.c
#mod_proxy_core_address.c mod_proxy_core_backlog.c mod_proxy_core_protocol.c
#mod_proxy_core_rewrites.c mod_proxy_core_spawn.c
#''', uselib = 'pcre')
#lighty_mod(bld, 'mod_proxy_backend_http', 'mod_proxy_backend_http.c')
#lighty_mod(bld, 'mod_proxy_backend_fastcgi', 'mod_proxy_backend_fastcgi.c')
#lighty_mod(bld, 'mod_proxy_backend_scgi', 'mod_proxy_backend_scgi.c')
#lighty_mod(bld, 'mod_proxy_backend_ajp13', 'mod_proxy_backend_ajp13.c')
#lighty_mod(bld, 'mod_userdir', 'mod_userdir.c')
#lighty_mod(bld, 'mod_secdownload', 'mod_secure_download.c')
#lighty_mod(bld, 'mod_accesslog', 'mod_accesslog.c')
#lighty_mod(bld, 'mod_simple_vhost', 'mod_simple_vhost.c')
#lighty_mod(bld, 'mod_evhost', 'mod_evhost.c')
#lighty_mod(bld, 'mod_expire', 'mod_expire.c')
#lighty_mod(bld, 'mod_status', 'mod_status.c')
#lighty_mod(bld, 'mod_compress', 'mod_compress.c', uselib = 'bzip zlib')
#lighty_mod(bld, 'mod_redirect', 'mod_redirect.c', uselib = 'pcre')
#lighty_mod(bld, 'mod_rewrite', 'mod_rewrite.c', uselib = 'pcre')
#lighty_mod(bld, 'mod_auth', 'mod_auth.c http_auth_digest.c http_auth.c', uselib = 'crypt ldap') ## lber?
#lighty_mod(bld, 'mod_sql_vhost_core', 'mod_sql_vhost_core.c')
#lighty_mod(bld, 'mod_postgresql_vhost', 'mod_postgresql_vhost.c', uselib = 'postgresql', option = 'postgresql')
#lighty_mod(bld, 'mod_mysql_vhost', 'mod_mysql_vhost.c', uselib = 'mysql', option = 'mysql')
#lighty_mod(bld, 'mod_trigger_b4_dl', 'mod_trigger_b4_dl.c', uselib = 'pcre')
#lighty_mod(bld, 'mod_uploadprogress', 'mod_uploadprogress.c')
#lighty_mod(bld, 'mod_evasive', 'mod_evasive.c')
#lighty_mod(bld, 'mod_ssi', 'mod_ssi_exprparser.y mod_ssi_expr.c mod_ssi.c', uselib = 'pcre')
#lighty_mod(bld, 'mod_flv_streaming', 'mod_flv_streaming.c')
#lighty_mod(bld, 'mod_chunked', 'mod_chunked.c')
#lighty_mod(bld, 'mod_magnet', 'mod_magnet.c mod_magnet_cache.c', uselib = 'lua')
#lighty_mod(bld, 'mod_deflate', 'mod_deflate.c', uselib = 'bzip zlib')
#lighty_mod(bld, 'mod_webdav', 'mod_webdav.c', uselib = 'sqlite3 xml uuid')
2008-07-08 16:51:03 +00:00
2008-08-07 14:49:44 +00:00
#tests = bld.new_task_gen('cc', 'program')
#tests.inst_var = 0
#tests.unit_test = 1
#tests.name = 'tests'
#tests.source = 'tests.c ' + common_source
#if env['LIB_lua']:
#tests.source += common_source_lua
#tests.target = 'tests'
#tests.uselib += 'lighty dl ev openssl pcre lua ' + common_uselib + ' lightylast'
#tests.includes = '.'
2008-06-24 19:19:20 +00:00
def configure(conf):
env = conf.env
#env['LEMON_EXT'] = [ '.y' ]
env['LIBDIR'] = Options.options.libdir
env['APPEND'] = Options.options.append
2008-06-24 19:19:20 +00:00
env['plugin_INST_VAR'] = 'LIBDIR'
env['plugin_INST_DIR'] = ''