| gitweb_config = configuration_data() |
| gitweb_config.set_quoted('PERL_PATH', target_perl.full_path()) |
| gitweb_config.set_quoted('CSSMIN', '') |
| gitweb_config.set_quoted('JSMIN', '') |
| gitweb_config.set_quoted('GIT_BINDIR', get_option('prefix') / get_option('bindir')) |
| gitweb_config.set_quoted('GITWEB_CONFIG', get_option('gitweb_config')) |
| gitweb_config.set_quoted('GITWEB_CONFIG_SYSTEM', get_option('gitweb_config_system')) |
| gitweb_config.set_quoted('GITWEB_CONFIG_COMMON', get_option('gitweb_config_common')) |
| gitweb_config.set_quoted('GITWEB_HOME_LINK_STR', get_option('gitweb_home_link_str')) |
| gitweb_config.set_quoted('GITWEB_SITENAME', get_option('gitweb_sitename')) |
| gitweb_config.set_quoted('GITWEB_PROJECTROOT', get_option('gitweb_projectroot')) |
| gitweb_config.set_quoted('GITWEB_PROJECT_MAXDEPTH', get_option('gitweb_project_maxdepth')) |
| gitweb_config.set_quoted('GITWEB_EXPORT_OK', get_option('gitweb_export_ok')) |
| gitweb_config.set_quoted('GITWEB_STRICT_EXPORT', get_option('gitweb_strict_export')) |
| gitweb_config.set_quoted('GITWEB_BASE_URL', get_option('gitweb_base_url')) |
| gitweb_config.set_quoted('GITWEB_LIST', get_option('gitweb_list')) |
| gitweb_config.set_quoted('GITWEB_HOMETEXT', get_option('gitweb_hometext')) |
| gitweb_config.set_quoted('GITWEB_CSS', get_option('gitweb_css')) |
| gitweb_config.set_quoted('GITWEB_LOGO', get_option('gitweb_logo')) |
| gitweb_config.set_quoted('GITWEB_FAVICON', get_option('gitweb_favicon')) |
| gitweb_config.set_quoted('GITWEB_JS', get_option('gitweb_js')) |
| gitweb_config.set_quoted('GITWEB_SITE_HTML_HEAD_STRING', get_option('gitweb_site_html_head_string')) |
| gitweb_config.set_quoted('GITWEB_SITE_HEADER', get_option('gitweb_site_header')) |
| gitweb_config.set_quoted('GITWEB_SITE_FOOTER', get_option('gitweb_site_footer')) |
| gitweb_config.set_quoted('HIGHLIGHT_BIN', get_option('highlight_bin')) |
| |
| configure_file( |
| input: 'GITWEB-BUILD-OPTIONS.in', |
| output: 'GITWEB-BUILD-OPTIONS', |
| configuration: gitweb_config, |
| ) |
| |
| test_dependencies += custom_target( |
| input: 'gitweb.perl', |
| output: 'gitweb.cgi', |
| command: [ |
| shell, |
| meson.current_source_dir() / 'generate-gitweb-cgi.sh', |
| meson.current_build_dir() / 'GITWEB-BUILD-OPTIONS', |
| git_version_file.full_path(), |
| '@INPUT@', |
| '@OUTPUT@', |
| ], |
| install: true, |
| install_dir: get_option('datadir') / 'gitweb', |
| depends: [git_version_file], |
| ) |
| |
| javascript_files = [ |
| meson.current_source_dir() / 'static/js/adjust-timezone.js', |
| meson.current_source_dir() / 'static/js/blame_incremental.js', |
| meson.current_source_dir() / 'static/js/javascript-detection.js', |
| meson.current_source_dir() / 'static/js/lib/common-lib.js', |
| meson.current_source_dir() / 'static/js/lib/cookies.js', |
| meson.current_source_dir() / 'static/js/lib/datetime.js', |
| ] |
| |
| test_dependencies += custom_target( |
| input: javascript_files, |
| output: 'gitweb.js', |
| command: [ |
| shell, |
| meson.current_source_dir() / 'generate-gitweb-js.sh', |
| '@OUTPUT@', |
| ] + javascript_files, |
| install: true, |
| install_dir: get_option('datadir') / 'gitweb/static', |
| ) |
| |
| foreach asset : [ |
| 'static/git-favicon.png', |
| 'static/git-logo.png', |
| 'static/gitweb.css', |
| ] |
| if meson.version().version_compare('>=1.3.0') |
| fs.copyfile(asset, |
| install: true, |
| install_dir: get_option('datadir') / 'gitweb' / fs.parent(asset), |
| ) |
| else |
| configure_file( |
| input: asset, |
| output: fs.stem(asset), |
| copy: true, |
| install: true, |
| install_dir: get_option('datadir') / 'gitweb' / fs.parent(asset), |
| ) |
| endif |
| endforeach |