aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/buildfile
AgeCommit message (Collapse)AuthorFilesLines
2024-04-01Add ~host-no-warnings and ~build2-no-warnings special configurationsBoris Kolpackov1-6/+50
These are parallel to ~host and ~build2 but with suppressed C/C++ compiler warnings. Note also that the C++ ad hoc recipes are now by default built in ~build2-no-warnings instead of ~build2 unless the project is configured for development with config.<project>.develop=true.
2024-03-27Filter out config.bin.lib/config.bin.*.lib from ~hostBoris Kolpackov1-10/+22
2023-11-22Add support for `import std` in Clang 17 or later with libc++Boris Kolpackov1-0/+11
2023-06-08Add support for buildfile importationBoris Kolpackov1-6/+29
2023-04-13Move cli module to libbuild2-cli libraryBoris Kolpackov1-1/+1
This is a temporary measure (until we unboundle this module) needed for in-process configure support in bpkg.
2022-12-05Filter out sanitizer options from ~host configurationBoris Kolpackov1-29/+51
We run the toolchain with various sanitizers on CI but sanitizers cause issues in some packages.
2022-10-20Diagnose incorrect output directory specificationBoris Kolpackov1-4/+4
2022-03-11Add JSON format support for --structured-result option and info meta operationKaren Arutyunov1-1/+1
2022-02-21Ban module names that start with underscoreBoris Kolpackov1-3/+6
2022-02-18Factor out common CLI types (scanners, etc)Karen Arutyunov1-11/+19
2022-02-18Move parse_cmdline() to libbuild2Karen Arutyunov1-9/+37
2021-12-01Don't save test configuration variables to ~build2 configurationKaren Arutyunov1-11/+14
Also stop saving blank lines between groups of options.
2021-11-23Add support for dynamic dependencies in ad hoc Buildscript recipesBoris Kolpackov1-30/+49
Specifically, add the new `depdb dyndep` builtin that can be used to extract dynamic dependencies from a program run or a file. For example: obje{hello.o}: cxx{hello} {{ s = $path($<[0]) depdb dyndep $cxx.poptions $cc.poptions --what=header --default-prereq-type=h -- $cxx.path $cxx.poptions $cc.poptions $cxx.mode -M -MG $s diag c++ ($<[0]) o = $path($>) $cxx.path $cxx.poptions $cc.poptions $cc.coptions $cxx.coptions $cxx.mode -o $o -c $s }} Currently only the `make` dependency format is supported.
2021-05-04Replace int_ with intf_ and imp_ with impl_ in namesBoris Kolpackov1-3/+3
2021-04-16Handle hermetic configurations in ~host and ~build2Boris Kolpackov1-9/+14
Specifically, we keep config.config.environment but strip config.config.hermetic. Also update the INSTALL file.
2020-12-11Add export script pseudo-builtinKaren Arutyunov1-1/+1
2020-07-18Work around Clang bug #45021Boris Kolpackov1-0/+10
2020-06-15Diagnose building of module or ad hoc C++ recipe using static build systemBoris Kolpackov1-1/+3
2020-06-12Make order of imports stable in saved host build configurationBoris Kolpackov1-1/+3
2020-05-27Initial support for ad hoc recipes (still work in progress)Boris Kolpackov1-5/+11
2020-04-03Tweak ~host configuration extraction regexBoris Kolpackov1-4/+6
2020-04-02Fix ~host config to only contain cc and bin modules configurationBoris Kolpackov1-10/+20
Also add ~build2 that contains everything (except config.dist.*) to be used for build system modules.
2020-03-13Cleanup and make config/utility.?xx part of build system coreBoris Kolpackov1-1/+3
2020-02-07Drop copyright notice from source codeKaren Arutyunov1-1/+0
2019-11-22Filter out config.install.chroot from default host configurationBoris Kolpackov1-1/+7
2019-11-12Explicitly load bundled module buildfiles to "use" their importsBoris Kolpackov1-1/+9
2019-11-12Rename config.{import,export} to config.config.{load,save}Boris Kolpackov1-1/+1
Also rename the $config.export() function to $config.save().
2019-11-08Use $regex.replace_lines() for default host config processingBoris Kolpackov1-5/+3
2019-11-05Add support for automatic importing of libbuild2 of installed caseBoris Kolpackov1-0/+10
2019-11-04Add support for ~host special configuration name in config.importBoris Kolpackov1-3/+22
This is the "default host configuration" that corresponds to how the build system itself was built. For example: $ b create: tools/,cc config.import=~host
2019-08-28Export dependency on -lpthreadBoris Kolpackov1-0/+6
2019-08-28Make lib{build2} "implied interface dependency" of modulesBoris Kolpackov1-0/+7
This makes our compilation and linking command lines a little bit saner.
2019-08-28Cleanup buildfiles some moreBoris Kolpackov1-2/+6
2019-08-28Reduce repetition in buildfilesBoris Kolpackov1-5/+2
2019-08-28Move cxx build system module to separate libraryKaren Arutyunov1-4/+4
2019-08-28Move c build system module to separate libraryKaren Arutyunov1-1/+1
2019-08-28Move cc build system module to separate libraryKaren Arutyunov1-1/+1
2019-08-28Move bin build system module to separate libraryKaren Arutyunov1-1/+1
2019-08-28Redo build_installed without requiring linking whole archiveBoris Kolpackov1-10/+7
2019-08-27Temporary fix for multiple whole archive linking issueBoris Kolpackov1-9/+3
2019-08-27Force use of RPATH instead of RUNPATH on LinuxBoris Kolpackov1-1/+9
RUNPATH messes up our use of dlopen().
2019-08-27Reorder dependencies in buildfileBoris Kolpackov1-4/+6
2019-08-27Tweak cross-compilation detection in buildfileBoris Kolpackov1-4/+11
2019-08-27Don't set import.build2 variable in cross-compiled build2Karen Arutyunov1-6/+7
2019-08-26Implement auto-import of development build2 buildBoris Kolpackov1-4/+16
2019-08-21Implement dynamic loading of build system modulesBoris Kolpackov1-0/+11
2019-08-17Add '--std c++11' CLI option in buildfilesKaren Arutyunov1-1/+1
2019-08-01Move bash build system module to separate libraryKaren Arutyunov1-1/+1
2019-08-01Move version build system module to separate libraryKaren Arutyunov1-1/+1
2019-07-24Use CLI-generated classes to parse testscript builtin optionsKaren Arutyunov1-1/+39