path: root/build2
AgeCommit message (Collapse)AuthorFilesLines
2017-07-12Make use of wildcards in buildfilesKaren Arutyunov1-105/+3
2017-07-05Keep track of translation unit type, make own BMI for impl unit firstBoris Kolpackov3-36/+65
2017-06-29Pass entire BMI graph, not only direct imports and re-exportsBoris Kolpackov2-30/+63
All current implementations require access to the entire graph (though Clang embeds the file references so we don't need to pass the options).
2017-06-28Update to reflect new GCC signature for C++ modules branchBoris Kolpackov1-1/+1
2017-06-27Add support for regex function familyKaren Arutyunov4-1/+335
2017-06-26Add support for $path_search() and $path_match()Karen Arutyunov4-12/+280
2017-06-26Make path value type to be base for dir_pathKaren Arutyunov2-7/+10
2017-06-24Make VC compatible with 'export module M;' by fixing up preprocessed outputBoris Kolpackov5-13/+55
2017-06-23Don't treat mxx{} as cc-sourceBoris Kolpackov2-4/+4
If we do it, then the link rule will refuse to match when modules are disabled (in which case mxx{} should be treated as a header).
2017-06-22Add extra support for symbol exporting in modularized projectsBoris Kolpackov5-4/+42
Since modules don't see each other's macros, we can use a single, keyword- like macro for dll-exporting that is managed by the build system (so no need for an "export" header). For example: cxx.features.symexport = true export __symexport void f ();
2017-06-21Add support for $envvar() functionKaren Arutyunov2-3/+35
2017-06-21Move regex utilities to libbutlKaren Arutyunov6-318/+2
2017-06-20Adjust search logic for std.* modulesBoris Kolpackov1-14/+45
1. Don't do fuzzy match for std.* modules (more precisely, for 'std' and std.*). This means if we want to build a std.* module, we have to specify its name explicitly: mxx{std-core}@./: cc.module_name = std.core The idea is that we don't want, say, std.core to be fuzzy-matched to some unrelated core.mxx while #2 below could have done the right thing. 2. We allow such modules to go unresolved with the assumption that they are pre-built and will be found by other means (e.g., VC's IFCPATH).
2017-06-20Force Clang not to reference source files from BMIs, add traceBoris Kolpackov1-1/+12
2017-06-20Fix bug in bmi{} rule chainingBoris Kolpackov1-2/+8
2017-06-19Dereference pointer when printingBoris Kolpackov1-1/+1
2017-06-19Add support for exit testscript builtinKaren Arutyunov4-290/+436
2017-06-19Fix conditional scope to never be emptyKaren Arutyunov1-0/+1
2017-06-16Fix bug (forward-declared inline function)Boris Kolpackov2-32/+26
2017-06-16Add support for explicitly specifying module name on mxx{} targetBoris Kolpackov4-25/+82
2017-06-16Clean up module-related diagnosticsBoris Kolpackov5-8/+61
2017-06-16Store module information in depdbBoris Kolpackov4-98/+254
2017-06-15Add support for ln testscript builtinKaren Arutyunov2-16/+237
2017-06-15Implement module search in prerequisite librariesBoris Kolpackov2-78/+170
2017-06-14Get rid of warningsBoris Kolpackov1-2/+2
2017-06-14Next installment in C++ modules saga: module search, re-export supportBoris Kolpackov9-83/+438
2017-06-12Fix crashing if path_search() failsKaren Arutyunov1-2/+9
2017-06-12Remove few unused lambda capturesBoris Kolpackov6-10/+10
2017-06-12Fix couple of deadly bugsBoris Kolpackov2-2/+2
2017-06-12Extend workaround version checks to VC15u3 (19.11)Boris Kolpackov2-4/+4
2017-06-12Reimplement thread thunking with lambda; this helps Clang 5.0/trunkBoris Kolpackov1-18/+10
2017-06-12Only enable modules if practically usable unless forcedBoris Kolpackov1-4/+10
2017-06-12Add workaround for Clang module import during preprocessingBoris Kolpackov7-44/+79
2017-06-09Only enable modules for GCC from the cxx-modules branchBoris Kolpackov1-3/+4
2017-06-09Only enable modules support starting from VC15u3 (19.11)Boris Kolpackov1-2/+5
2017-06-09Add support for VC15u3 which bumped the compiler version to 19.11Boris Kolpackov1-9/+11
2017-06-08Add full support for pattern exclusionsKaren Arutyunov1-29/+26
2017-06-08Implement rule chaining for modulesBoris Kolpackov13-263/+474
2017-06-06Adapt to libbutl::process interface changeKaren Arutyunov2-4/+4
2017-06-05Remove implicit see-through iteration over ad hoc group membersBoris Kolpackov4-55/+16
This can only be done MT-safely after a synchronous match.
2017-06-05Fix bug in library meta-information protocol implementationBoris Kolpackov1-7/+9
2017-06-04Adjust Clang language selectionBoris Kolpackov1-22/+9
2017-06-02Link support for modules: link object member, synthesize rulesBoris Kolpackov1-40/+78
2017-06-01Implement module interface unit compilation for Clang and VCBoris Kolpackov5-79/+221
2017-06-01Rename function not to clash with typeBoris Kolpackov2-8/+8
2017-06-01Implement new testscript cleanup wildcards semanticsKaren Arutyunov1-81/+101
2017-06-01Rework language selection during compilation codeBoris Kolpackov2-50/+108
2017-05-31Fix bug in compiler language selection (-x option)Boris Kolpackov1-6/+6
2017-05-31C++ modules work: add target typesBoris Kolpackov15-105/+346
2017-05-31Adjust extension semantics in file rule to match search_existing_file()Boris Kolpackov4-18/+40