2022-06-25 01:55:54 +02:00
|
|
|
import os
|
|
|
|
|
|
|
|
Import('env')
|
|
|
|
|
|
|
|
module_env = env.Clone()
|
|
|
|
|
|
|
|
sources = [
|
|
|
|
|
|
|
|
"register_types.cpp",
|
|
|
|
|
2022-06-27 12:28:36 +02:00
|
|
|
"file_cache.cpp",
|
|
|
|
|
2022-06-27 14:59:09 +02:00
|
|
|
"http/csrf_token.cpp",
|
|
|
|
"http/http_server_enums.cpp",
|
|
|
|
"http/http_session.cpp",
|
|
|
|
"http/http_session_manager.cpp",
|
|
|
|
"http/web_node.cpp",
|
|
|
|
"http/web_permission.cpp",
|
|
|
|
"http/web_root.cpp",
|
|
|
|
"http/web_server.cpp",
|
|
|
|
"http/web_server_cookie.cpp",
|
|
|
|
"http/web_server_middleware.cpp",
|
|
|
|
"http/web_server_request.cpp",
|
2023-01-03 21:27:36 +01:00
|
|
|
"http/web_server_request_scriptable.cpp",
|
2022-06-27 14:59:09 +02:00
|
|
|
|
2022-06-25 01:55:54 +02:00
|
|
|
"html/html_builder_bind.cpp",
|
2022-07-02 16:40:08 +02:00
|
|
|
"html/html_builder.cpp",
|
2022-07-02 22:18:14 +02:00
|
|
|
"html/paginator.cpp",
|
2022-07-03 18:13:41 +02:00
|
|
|
"html/html_parser.cpp",
|
2022-07-03 18:40:05 +02:00
|
|
|
"html/bbcode_parser.cpp",
|
2022-07-04 20:43:39 +02:00
|
|
|
"html/form_validator.cpp",
|
2024-02-25 14:54:50 +01:00
|
|
|
"html/html_template.cpp",
|
|
|
|
"html/html_template_data.cpp",
|
2022-06-30 17:15:57 +02:00
|
|
|
|
2022-07-19 22:37:41 +02:00
|
|
|
"html/libs/hoedown/autolink.c",
|
|
|
|
"html/libs/hoedown/buffer.c",
|
|
|
|
"html/libs/hoedown/document.c",
|
|
|
|
"html/libs/hoedown/escape.c",
|
|
|
|
"html/libs/hoedown/html.c",
|
|
|
|
"html/libs/hoedown/html_blocks.c",
|
|
|
|
"html/libs/hoedown/html_smartypants.c",
|
|
|
|
"html/libs/hoedown/stack.c",
|
|
|
|
"html/libs/hoedown/version.c",
|
|
|
|
"html/markdown_renderer.cpp",
|
|
|
|
|
2022-07-23 01:20:43 +02:00
|
|
|
"nodes/static_pages/static_web_page.cpp",
|
|
|
|
"nodes/static_pages/static_web_page_file.cpp",
|
|
|
|
"nodes/static_pages/static_web_page_folder_files.cpp",
|
2022-07-02 16:40:08 +02:00
|
|
|
|
2022-07-23 01:20:43 +02:00
|
|
|
"nodes/folder_serve_nodes/browsable_folder_serve_web_page.cpp",
|
|
|
|
"nodes/folder_serve_nodes/folder_serve_web_page.cpp",
|
2022-07-03 13:23:32 +02:00
|
|
|
|
2022-07-23 01:20:43 +02:00
|
|
|
"nodes/list_page/list_web_page.cpp",
|
2022-07-03 15:27:14 +02:00
|
|
|
|
2022-07-23 01:20:43 +02:00
|
|
|
"nodes/paged_article/paged_article_web_page.cpp",
|
|
|
|
"nodes/paged_article/paged_articles_web_page.cpp",
|
|
|
|
#"nodes/paged_article/paged_articles_md_index_web_page.cpp",
|
2022-07-23 00:54:26 +02:00
|
|
|
|
|
|
|
"nodes/redirect/redirect_web_page.cpp",
|
2022-07-23 02:06:11 +02:00
|
|
|
"nodes/redirect/alias_web_page.cpp",
|
2022-06-25 01:55:54 +02:00
|
|
|
]
|
|
|
|
|
2022-08-20 18:11:07 +02:00
|
|
|
if env["tools"]:
|
2024-02-25 16:23:36 +01:00
|
|
|
sources.append("html/editor/resource_importer_html_template_data.cpp")
|
|
|
|
|
2022-08-23 13:24:31 +02:00
|
|
|
sources.append("editor/web_node_editor.cpp")
|
|
|
|
sources.append("editor/web_node_editor_plugin.cpp")
|
|
|
|
sources.append("editor/web_node_editor_web_server.cpp")
|
|
|
|
sources.append("editor/web_node_editor_web_server_request.cpp")
|
2022-08-20 18:11:07 +02:00
|
|
|
|
2022-12-18 14:03:07 +01:00
|
|
|
if env['module_database_enabled']:
|
|
|
|
sources.append("database/http_session_manager_db.cpp")
|
|
|
|
|
2022-06-25 01:55:54 +02:00
|
|
|
if ARGUMENTS.get('custom_modules_shared', 'no') == 'yes':
|
|
|
|
# Shared lib compilation
|
|
|
|
module_env.Append(CCFLAGS=['-fPIC'])
|
|
|
|
module_env['LIBS'] = []
|
|
|
|
shared_lib = module_env.SharedLibrary(target='#bin/web', source=sources)
|
|
|
|
shared_lib_shim = shared_lib[0].name.rsplit('.', 1)[0]
|
|
|
|
env.Append(LIBS=[shared_lib_shim])
|
|
|
|
env.Append(LIBPATH=['#bin'])
|
|
|
|
else:
|
|
|
|
# Static compilation
|
|
|
|
module_env.add_source_files(env.modules_sources, sources)
|
|
|
|
|