# file : mod/buildfile # license : MIT; see accompanying LICENSE file define mod: libs mod{*}: { bin.lib.prefix = mod_ backlink = true # Backlink in forwarded configurations. install = libexec/ } import libs = libcmark-gfm%lib{cmark-gfm} import libs += libcmark-gfm-extensions%lib{cmark-gfm-extensions} import libs += libodb%lib{odb} import libs += libodb-pgsql%lib{odb-pgsql} import libs += libbutl%lib{butl} import libs += libbpkg%lib{bpkg} import libs += libbbot%lib{bbot} include ../libbrep/ include ../web/xhtml/ include ../web/server/ ./: mod{brep} {libue libus}{mod} libu_src = options-types types-parsers build-target-config mod{brep}: {hxx ixx txx cxx}{* -module-options -{$libu_src}} \ libus{mod} ../libbrep/lib{brep} ../web/server/libus{web-server} \ $libs {libue libus}{mod}: {hxx ixx cxx}{module-options} \ {hxx ixx txx cxx}{+{$libu_src} } \ $libs # Add support for tenant-associated service notifications to the CI module for # the debugging of the notifications machinery. # cxx.poptions += -DBREP_CI_TENANT_SERVICE cxx.poptions += -DBREP_CI_TENANT_SERVICE_UNLOADED libus{mod}: ../web/xhtml/libus{xhtml} libue{mod}: ../web/xhtml/libue{xhtml} # Generated options parser. # if $cli.configured { cli.cxx{module-options}: cli{module} # Set option prefix to the empty value to handle all unknown request # parameters uniformly with a single catch block. # cli.options += --std c++11 -I $src_root --include-with-brackets \ --include-prefix mod --guard-prefix MOD --generate-specifier \ --cxx-prologue "#include " \ --cli-namespace brep::cli --generate-file-scanner --option-length 46 \ --generate-modifier --generate-description --option-prefix "" # Include the generated cli files into the distribution and don't remove # them when cleaning in src (so that clean results in a state identical to # distributed). # cli.cxx{*}: { dist = true clean = ($src_root != $out_root) } } # Don't install any of the module's headers. # {hxx ixx txx}{*}: install = false