aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/cc/pkgconfig.cxx
AgeCommit message (Collapse)AuthorFilesLines
2023-02-13Deduplicate -I and -L options extracted from pkg-config files (GH issue #265)Boris Kolpackov1-43/+81
2022-12-14Improve empty simple value to empty list of names reduction heuristicsBoris Kolpackov1-1/+1
Specifically, do not reduce typed RHS empty simple values for prepend/append and additionally for assignment provided LHS is typed and is a container.
2022-12-08Normalize extracted header/library search directories (GH issue #235)Boris Kolpackov1-0/+1
2022-12-07List dnsapi, msimg32 as Windows system librariesBoris Kolpackov1-2/+4
2022-12-05List windowscodecs as Windows system libraryBoris Kolpackov1-0/+1
2022-11-16Initial low verbosity diagnostics reworkBoris Kolpackov1-3/+3
2022-10-17Add pkg-config search tracingBoris Kolpackov1-2/+14
2022-10-17Tolerate case differences when looking for pkg-config filesBoris Kolpackov1-18/+26
2022-10-13Fix bug in pkg-config metadata extraction logicBoris Kolpackov1-6/+9
2022-10-10Preparatory work for public/private variable distinctionBoris Kolpackov1-1/+7
We still always use the public var_pool from context but where required, all access now goes through scope::var_pool().
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