aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/cc/pkgconfig.cxx
AgeCommit message (Collapse)AuthorFilesLines
2022-09-28Omit -l for binless libraries, metadata from common .pc fileBoris Kolpackov1-3/+26
Having -l options for binless (header-only) libraries makes it unusable from other build systems. But omitting them could make the metadata incomplete (for example, importable headers), so we omit that as well.
2022-09-27List dbghelp and mincore as system Windows librariesBoris Kolpackov1-0/+2
2022-09-27List winhttp and powrprof as system Windows librariesBoris Kolpackov1-0/+2
2022-07-20Fix bug in cc::pkconfig_save()Boris Kolpackov1-1/+1
2022-07-05Drop unused lambda captureBoris Kolpackov1-2/+1
2022-07-05Recognize special .for_install variable suffix in library user metadataBoris Kolpackov1-25/+79
2022-07-04Work around VC16 issueBoris Kolpackov1-0/+2
2022-07-04Factor libpkgconf-based pkgconfig implementation to separate source fileBoris Kolpackov1-461/+28
2022-07-02Minor cleanups in class pkgconf implementationBoris Kolpackov1-22/+32
2022-07-02Add note on version we save in pkg-config filesBoris Kolpackov1-0/+14
2022-07-01Ignore Provides when loading pkg-config informationBoris Kolpackov1-0/+1
Without this flag, on encountering an unknown package, libpkgconf will load *all* pkg-config files it can find in order to see if any of them provide it.
2022-06-29Save cc.type in pkg-config filesBoris Kolpackov1-0/+24
2022-06-29Rework pkg-config variable naming, use build2.metadata as general indicatorBoris Kolpackov1-174/+222
2022-06-28Complete support for saving/loading library metadata to/from pkg-config filesBoris Kolpackov1-76/+122
2022-06-24Add ability to get common interface options via $x.lib_poptions()Boris Kolpackov1-2/+8
Specifically, the output target type may now be omitted for utility libraries (libul{} and libu[eas]{}). In this case, only "common interface" options will be returned for lib{} dependencies. This is primarily useful for obtaining poptions to be passed to tools other than C/C++ compilers (for example, Qt moc).
2022-05-05Recognize -pthread as king of -l in *.libsBoris Kolpackov1-7/+13
2022-03-30Infrastructure for library metadata supportBoris Kolpackov1-5/+323
2022-03-28Add ability to customize pkg-config header and library search pathsBoris Kolpackov1-11/+36
Specifically, {cc,c,cxx}.pkgconfig.{include,lib} variables specify header (-I) and library (-L) search paths to use in the generated .pc files instead of the default install.{include,lib}. Relative paths are resolved as install paths.
2022-03-25Store bin.whole flag in pkg-config filesBoris Kolpackov1-13/+46
2022-01-10Add psapi.lib and iphlpapi.lib to list of Windows system librariesBoris Kolpackov1-0/+2
2021-11-04Do not apply install scope to update-for-install pre-operationBoris Kolpackov1-12/+26
2021-10-21Add more entries to list of Windows system librariesBoris Kolpackov1-0/+2
2021-10-21Skip NULL entries in BMI's prerequisite_targets when looking for sourceBoris Kolpackov1-1/+1
Fixes GitHub issue #169.
2021-10-16Skip regenerating .pc files during uninstallBoris Kolpackov1-1/+11
2021-10-14Use tidier pc and def names instead of generic gen for .pc and .def generationBoris Kolpackov1-1/+1
2021-10-07Verify libraries and targets they are linked to a for-install-compatibleBoris Kolpackov1-0/+1
2021-10-01Add notion of internal scope, translate external -I to -isystem or equivalentBoris Kolpackov1-3/+2
2021-09-21Add more libraries to list of Windows system librariesBoris Kolpackov1-0/+5
2021-09-20Add more libraries to list of Windows system librariesBoris Kolpackov1-2/+10
2021-09-20Add netapi32.lib to the list of Windows system librariesBoris Kolpackov1-0/+1
2021-08-12Avoid duplication in Libs/Libs.private in generated .pc filesBoris Kolpackov1-7/+32
2021-08-10Complete process_libraries() duplicate suppression workBoris Kolpackov1-2/+3
2021-08-09Print pkgconfig_save() command at verbosity 1 since can take longBoris Kolpackov1-1/+6
2021-08-05Implement traversal pruning in process_libraries()Boris Kolpackov1-2/+6
2021-07-01Suppress duplicate libraries in pkg-config filesBoris Kolpackov1-19/+54
2021-05-25Add dbgeng.lib to list of Windows system librariesBoris Kolpackov1-0/+1
2021-05-14Add synchronization.lib to the list of Windows system librariesBoris Kolpackov1-19/+21
2021-05-13Rename sys_inc_dirs to sys_hdr_dirs for consistencyBoris Kolpackov1-5/+5
2021-05-06See through utility libraries when looking for module interfacesBoris Kolpackov1-44/+56
2021-05-04Replace int_ with intf_ and imp_ with impl_ in namesBoris Kolpackov1-1/+1
2021-05-04Handle duplicate suppression of multi-element libraries (-l foo)Boris Kolpackov1-6/+11
See GitHub issue #114 for context.
2021-02-11Generalize process_libraries() to allow no picking installed library memberBoris Kolpackov1-6/+4
2021-02-09Minor simplificationBoris Kolpackov1-3/+3
2021-02-03Propagate relevant options/prerequisites to header unit sidebuildsBoris Kolpackov1-5/+9
2021-01-30Rework include translation supportBoris Kolpackov1-29/+145
See the config.cxx.translate_include variable documentation in cxx/init.cxx for details.
2021-01-21Use target name to derive binless library -l-nameBoris Kolpackov1-6/+18
2021-01-11Add extra diagnostics around pkg-config library resolutionBoris Kolpackov1-6/+24
2020-12-11Add support for module interface-only librariesBoris Kolpackov1-1/+1
Also suppress generation of the object file in cases where we don't need it.
2020-12-08Update pkg-config modules serialization format to handle partitionsBoris Kolpackov1-4/+27
2020-12-03Fix modules support for installed librariesBoris Kolpackov1-8/+7