Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2023-10-26 | WIP: fixes for match options | Boris Kolpackov | 3 | -6/+19 | |
2023-10-26 | Undo "Don't install static library prerequisites of executable" | Boris Kolpackov | 2 | -26/+1 | |
This turned out not to be always correct since a static library can have prerequisites that it requires at runtime (see the libca-certificates-curl for an example). The new plan is to split static/shared library installation into run-time and build-time parts using the new match options mechanism. | |||||
2023-10-26 | WIP: forward reapply() call to C++ ad hoc rule/recipe | Boris Kolpackov | 4 | -4/+22 | |
2023-10-26 | WIP: reorder options/fail argument in match_*() functions | Boris Kolpackov | 3 | -38/+43 | |
2023-10-26 | WIP: add rematch_*() functions | Boris Kolpackov | 2 | -1/+51 | |
2023-10-26 | WIP: drag options through all the match_*() functions | Boris Kolpackov | 3 | -42/+62 | |
2023-10-26 | WIP: add options to match_rule(), match_recipe() | Boris Kolpackov | 3 | -12/+26 | |
2023-10-26 | WIP: rename match_rule() to match_rule_impl() | Boris Kolpackov | 8 | -27/+30 | |
2023-10-26 | WIP: update documentation, deal with ad hoc group members | Boris Kolpackov | 2 | -37/+97 | |
2023-10-26 | WIP: move match_adhoc() call into match_impl_impl() | Boris Kolpackov | 2 | -53/+23 | |
2023-10-26 | WIP: drag options up the stack | Boris Kolpackov | 7 | -66/+233 | |
2023-10-26 | WIP: add match_extra data member and rule::rematch() | Boris Kolpackov | 5 | -6/+50 | |
2023-10-26 | Add inject_fsdir_direct(), fsdir_rule::perform_clean_direct() functions | Boris Kolpackov | 4 | -4/+55 | |
2023-10-26 | Add clean_during_match*() functions | Boris Kolpackov | 2 | -1/+196 | |
2023-10-26 | Minor diagnostics improvement | Boris Kolpackov | 2 | -5/+15 | |
2023-10-06 | Handle 0 mask in update_during_match_prerequisites() | Boris Kolpackov | 3 | -6/+7 | |
2023-10-04 | Add match_direct_complete() to support async direct matches | Boris Kolpackov | 2 | -19/+30 | |
2023-09-28 | Don't mark rdata symbols DATA in MSVC .def file (GH issue #315) | Boris Kolpackov | 1 | -1/+9 | |
2023-09-25 | Treat -liconv on Mac OS as system | Boris Kolpackov | 1 | -1/+5 | |
2023-09-21 | Fix bug in previous commit | Boris Kolpackov | 1 | -1/+1 | |
2023-09-21 | Don't install static library prerequisites of executable | Boris Kolpackov | 2 | -1/+32 | |
2023-09-20 | Fix issue with fallback rule priority in dist module | Boris Kolpackov | 6 | -22/+48 | |
While at it, also remove workarounds for the same issue in the config and test modules. | |||||
2023-09-11 | Invoke Clang to produce object files for module partitions similar to interfaces | Swat SomeBug | 1 | -2/+7 | |
Module interface and implementation partitions are like module interfaces so it's not surprising they require similar compilation steps. See GH PR #328 for background. | |||||
2023-09-08 | Manually extract library search paths from LIBRARY_PATH for Clang | Boris Kolpackov | 4 | -70/+90 | |
Unlike GCC, Clang does not incorporate the LIBRARY_PATH environment variable value into the -print-search-dirs output. | |||||
2023-09-07 | Search for .tbd in addition to .dylib in Mac OS | Boris Kolpackov | 1 | -0/+25 | |
Besides .dylib, Mac OS now also has "text-based stub libraries" that use the .tbd extension. They appear to be similar to Windows import libraries and contain information such as the location of the .dylib library, its symbols, etc. For example, there is /Library/.../MacOSX13.3.sdk/usr/lib/libsqlite3.tbd which points to /usr/lib/libsqlite3.dylib (but which itself is invisible/inaccessible, presumably for security). Note that for now we are treating the .tbd library as the shared library but could probably do the more elaborate dance with ad hoc members like on Windows if really necessary. | |||||
2023-09-07 | Add implied .../MacOSX*.sdk/usr/lib/ to system library search directories | Boris Kolpackov | 1 | -7/+22 | |
2023-09-06 | Don't crash if config.report.variable names undefined variable | Boris Kolpackov | 1 | -2/+2 | |
2023-08-29 | Add diagnostics color support on Windows (GH issue #312) | Boris Kolpackov | 3 | -27/+66 | |
Note that currently this has to be enabled with an explicit --diag-color option. In the future the plan is to enable it by default if supported. | |||||
2023-08-23 | Replace assert with diagnostics in bootstrap_src() (GH issue #322) | Boris Kolpackov | 1 | -0/+9 | |
2023-08-22 | Consider *_inc{} target types as headers for rule match purposes | Boris Kolpackov | 7 | -18/+26 | |
2023-08-22 | Add abstract c_inc{} and cxx_inc{} target types | Boris Kolpackov | 7 | -4/+71 | |
These abstract base target types are meant for deriving additional target types (for example, Qt moc{}) that can be #include'd in C and C++ translation units, respectively. In particular, only such targets will be considered to reverse-lookup extensions to target types (see dyndep_rule::map_extension() for background). | |||||
2023-08-09 | Auto-extract function documentation from functions-*.cxx | Boris Kolpackov | 1 | -0/+2 | |
2023-08-09 | Complete and cleanup function documentation in preparation for auto-extraction | Boris Kolpackov | 15 | -309/+537 | |
Also: - Move the $target.*() function family from functions-name.cxx to separate functions-target.cxx. - Get rid of the separate $process_path_ex.*() family, merging it with $process_path.*(). | |||||
2023-08-03 | Document target types in manual (GH issue #309) | Boris Kolpackov | 1 | -0/+3 | |
2023-08-02 | Diagnose declarations of targets/prerequisites with abstract target types | Boris Kolpackov | 2 | -1/+26 | |
2023-07-31 | Add CCC_OVERRIDE_OPTIONS to list of Clang env vars to track/save | Boris Kolpackov | 1 | -2/+5 | |
2023-07-27 | Recognize cNN/c++NN in addition to NN in c.std/cxx.std | Boris Kolpackov | 2 | -34/+72 | |
Also recognize 23 in addition to 2x for C23. | |||||
2023-07-24 | Add setupapi.lib to list of Windows system libraries | Boris Kolpackov | 1 | -0/+1 | |
2023-07-21 | Fix incorrect documentation in dyndep_rule API | Boris Kolpackov | 1 | -1/+1 | |
2023-07-20 | Don't treat unmatched prerequisites as implicitly ad hoc | Boris Kolpackov | 3 | -9/+32 | |
It was surprising and inconvenient that they didn't end up in $<. Plus, such prerequisites can always be marked as ad hoc explicitly. | |||||
2023-07-20 | Consider unmatched prerequisites in updated_during_match() check | Boris Kolpackov | 4 | -13/+45 | |
2023-07-20 | Change inner rule/prerequisites match order in install::file_rule | Boris Kolpackov | 7 | -4/+82 | |
The old order messed up the for-install signaling logic. See the long comment in install::file_rule::apply_impl() for background and details. | |||||
2023-07-20 | Improve diagnostics | Boris Kolpackov | 1 | -3/+16 | |
2023-07-05 | Change version to 0.17.0-a.0.z | Boris Kolpackov | 1 | -1/+1 | |
2023-06-30 | Release version 0.16.0v0.16.0 | Boris Kolpackov | 1 | -1/+1 | |
2023-06-28 | Minor tweaks and cleanups | Boris Kolpackov | 2 | -0/+4 | |
2023-06-26 | Regenerate options parsing files | Karen Arutyunov | 2 | -26/+26 | |
2023-06-26 | Omit dangling symlink warning for backlinked executables | Boris Kolpackov | 1 | -13/+44 | |
2023-06-22 | Map cxx.std=26 to -std=c++2c for GCC and Clang | Boris Kolpackov | 2 | -4/+13 | |
2023-06-22 | Fix wraparound in task_count logic | Boris Kolpackov | 3 | -18/+20 | |