From 3b4014da9d1b0dbb9054b89c4eadb4de2ee6e006 Mon Sep 17 00:00:00 2001 From: Thomas Porzelt Date: Tue, 8 Sep 2009 23:48:45 +0200 Subject: [PATCH] [waf] Add '--with-openssl' option and mod_openssl --- src/modules/wscript | 4 ++-- wscript | 35 ++++++++++++++++++++++++----------- 2 files changed, 26 insertions(+), 13 deletions(-) diff --git a/src/modules/wscript b/src/modules/wscript index f43e850..4c05e2d 100644 --- a/src/modules/wscript +++ b/src/modules/wscript @@ -30,13 +30,13 @@ def build(bld): lighty_mod(bld, 'mod_auth', 'mod_auth.c') lighty_mod(bld, 'mod_balancer', 'mod_balancer.c') lighty_mod(bld, 'mod_cache_disk_etag', 'mod_cache_disk_etag.c') - if bld.env['USE_ZLIB'] == 1: - lighty_mod(bld, 'mod_compress', 'mod_compress.c', uselib=['z']) lighty_mod(bld, 'mod_debug', 'mod_debug.c') lighty_mod(bld, 'mod_dirlist', 'mod_dirlist.c') lighty_mod(bld, 'mod_expire', 'mod_expire.c') lighty_mod(bld, 'mod_fastcgi', 'mod_fastcgi.c') lighty_mod(bld, 'mod_fortune', 'mod_fortune.c') + if bld.env['USE_OPENSSL'] == 1: + lighty_mod(bld, 'mod_openssl', 'mod_openssl.c', uselib=['ssl','crypto']) lighty_mod(bld, 'mod_redirect', 'mod_redirect.c') lighty_mod(bld, 'mod_rewrite', 'mod_rewrite.c') lighty_mod(bld, 'mod_status', 'mod_status.c') diff --git a/wscript b/wscript index d98a852..57deb9e 100644 --- a/wscript +++ b/wscript @@ -9,8 +9,12 @@ License and Copyright: see COPYING file import Options, types, os, sys, Runner, Utils from time import gmtime, strftime, timezone +LIGHTTPD_VERSION_MAJOR=2 +LIGHTTPD_VERSION_MINOR=0 +LIGHTTPD_VERSION_PATCH=0 + # the following two variables are used by the target "waf dist" -VERSION='2.0-pre' +VERSION='%d.%d.%d' % (LIGHTTPD_VERSION_MAJOR,LIGHTTPD_VERSION_MINOR,LIGHTTPD_VERSION_PATCH) APPNAME='lighttpd' # these variables are mandatory ('/' are converted automatically) @@ -24,6 +28,7 @@ def set_options(opt): # ./waf configure options opt.add_option('--with-lua', action='store_true', help='with lua 5.1 for mod_magnet', dest = 'lua', default = False) + opt.add_option('--with-openssl', action='store_true', help='with openssl-support [default: off]', dest='openssl', default=False) opt.add_option('--with-all', action='store_true', help='Enable all features', dest = 'all', default = False) opt.add_option('--static', action='store_true', help='build a static lighttpd with all modules added', dest = 'static', default = False) opt.add_option('--append', action='store', help='Append string to binary names / library dir', dest = 'append', default = '') @@ -38,8 +43,13 @@ def configure(conf): #conf.check_message_2('The waf build system has been disabled, please use cmake for the time being.', 'RED') #sys.exit(1) - conf.define('APPNAME', APPNAME) - conf.define('VERSION', VERSION) + conf.define('LIGHTTPD_VERSION_MAJOR', LIGHTTPD_VERSION_MAJOR) + conf.define('LIGHTTPD_VERSION_MINOR', LIGHTTPD_VERSION_MINOR) + conf.define('LIGHTTPD_VERSION_PATCH', LIGHTTPD_VERSION_PATCH) + conf.define('PACKAGE_NAME', APPNAME) + conf.define('PACKAGE_VERSION', VERSION) + conf.define('PACKAGE_BUILD_DATE', strftime("%b %d %Y %H:%M:%S UTC", gmtime())); + conf.define('LIBRARY_DIR', opts.libdir) conf.check_tool('compiler_cc') conf.check_tool('ragel', tooldir = '.') @@ -106,7 +116,16 @@ def configure(conf): conf.define('HAVE_LUA_H', 1) conf.define('HAVE_LIBLUA', 1) conf.define('USE_LUA', 1) - + + if opts.openssl: + if not conf.check_cfg(package='openssl', uselib_store='ssl', args='--cflags --libs'): + conf.check(lib='ssl', uselib_store='ssl', mandatory=True) + conf.check(header_name='openssl/ssl.h', uselib='ssl', mandatory=True) + conf.check(lib='crypto', uselib_store='crypto', mandatory=True) + conf.check(function_name='BIO_f_base64', header_name=['openssl/bio.h','openssl/evp.h'], uselib='crypto', mandatory=True) + conf.check(function_name='SSL_new', header_name='openssl/ssl.h', uselib='ssl', mandatory=True) + conf.define('USE_OPENSSL', 1) + if not opts.static: conf.check(lib='dl', uselib_store='dl') @@ -139,13 +158,6 @@ def configure(conf): conf.sub_config('src/main') conf.sub_config('src/modules') - conf.define('LIGHTTPD_VERSION_ID', 20000) - conf.define('PACKAGE_NAME', APPNAME) - conf.define('PACKAGE_VERSION', VERSION) - conf.define('PACKAGE_BUILD_DATE', strftime("%b %d %Y %H:%M:%S UTC", gmtime())); - conf.define('LIBRARY_DIR', opts.libdir) - conf.define('HAVE_CONFIG_H', 1) - revno = get_revno(conf) if revno: conf.define('LIGHTTPD_REVISION', revno) @@ -162,6 +174,7 @@ def configure(conf): print_summary(conf, 'Build static binary', 'yes' if opts.static else 'no', 'YELLOW' if opts.static else 'GREEN') print_summary(conf, 'Build debug binary', 'yes' if opts.debug else 'no', 'YELLOW' if opts.debug else 'GREEN') print_summary(conf, 'With lua support', 'yes' if opts.lua else 'no', 'GREEN' if opts.lua else 'YELLOW') + print_summary(conf, 'With ssl support', 'yes' if opts.openssl else 'no', 'GREEN' if opts.openssl else 'YELLOW') def build(bld):