#
e244d500 |
| 11-Nov-2024 |
Viktor Szakats |
configure: do not echo most inherited `LDFLAGS` to config files `libcurl.pc` `Libs.private` (since 8.11.0, and in `Libs` before 7.20.0) and `curl-config` `--static-libs` (since 7.17.1, a
configure: do not echo most inherited `LDFLAGS` to config files `libcurl.pc` `Libs.private` (since 8.11.0, and in `Libs` before 7.20.0) and `curl-config` `--static-libs` (since 7.17.1, and in `Libs` between 7.7.2-7.25.0). This included all flags inherited from the environment, in addition to those coming from dependency detections. To avoid spilling all linker flags inherited from the environment to the libcurl config files, this patch omits them all, except `-L`, `-F`, `--library-path=` and `-framework` options, which are still passed. The rationale for the exceptions is that `LIBS` is passed as-is, and `LDFLAGS`, `LIBS` are the canonical way to pass custom libs options to a build. `LIBS` may not work without a matching custom libpath. This brings autotools behaviour closer to cmake, and `curl-config` closer to `libcurl.pc`. Follow-up to 9f56bb608ecfbb8978c6cb72a04d9e8b23162d82 #14681 Follow-up to 4c8adc8fee5e55754da3d8f8d982733a7bf3dece Reported-by: Peter Marko Fixes #15533 Closes #15550
show more ...
|
#
9f56bb60 |
| 25-Aug-2024 |
Viktor Szakats |
GHA/configure-vs-cmake: check `libcurl.pc`/`curl-config`, fix issues Add CI checker to compare `libcurl.pc` and `curl-config` files generated by autotools and cmake builds. Fix
GHA/configure-vs-cmake: check `libcurl.pc`/`curl-config`, fix issues Add CI checker to compare `libcurl.pc` and `curl-config` files generated by autotools and cmake builds. Fix differences and apply tiny cleanups: - curl-config: use single-quotes for literals. - curl-config: quote all variables. - curl-config: replace double with single quotes in a substituted value that's always literal (`@prefix@`). - libcurl.pc: spelling in `Description:`. - libcurl.pc: avoid substitution in a comment. - cmake: fill `libdir` with `${exec_prefix}` instead of a literal. To sync with './configure'. - configure: fix `CURL_CA_BUNDLE` value to not generate nested quotes in `curl-config`. - configure: add missing `LDFLAGS` to `Libs.private` in `libcurl.pc`. To sync with CMake. - cmake: skip adding `CMAKE_C_IMPLICIT_LINK_LIBRARIES` for MINGW and UNIX. They added these values as seen in CI: MINGW: `-lmingw32 -lgcc -lmoldname -lmingwex -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc -lmoldname -lmingwex` Linux: `-lgcc -lgcc_s -lc -lgcc -lgcc_s` - cmake: delete FIXME about enabling libssh2 by default. `./configure` has special defaults for these packages (called: "off"): brotli, zstd, libpsl, libssh2, libssh, wolfssl, librtmp It looks for them, but only at system locations, which makes them never detected e.g. on macOS. CMake doesn't offer such default mode for now. - GHA/macos: drop now redundant `-DCURL_DISABLE_LDAPS=ON`. - cmake: use `CMAKE_INSTALL_INCLUDEDIR` and `CMAKE_INSTALL_LIBDIR` instead of hardcoded `include`/`lib` when generating `libcurl.pc`. Updates to the GHA workflow: - move autotools out-of-tree and rename cmake out-of-tree directory to `bld_cm` to tell it's cmake. - disable static libcurl for `./configure` to match cmake. - enable `pkg-config` debug output with `./configure`. - dump list of Homebrew packages on macOS. - dump `./configure` detailed logs. - disable zstd and brotli for Linux, to match cmake. There remain differences, mostly due to detection order and method. Also some values are inherently different when using CMake and autotools, such as `--cc`, `--configure`. autotools also generates duplicates for `-lssl` and `-lcrypto`. macOS LDAP wants to link `-lber` while autotools doesn't. Some build defaults are also different in autotools and cmake. These differences are smoothened out for now by the checker script, or via build options. Notice that lib order (a dupes) _can_ be significant in some cases. E.g. the binutils linker is infamous for that on Windows. Closes #14681
show more ...
|
#
d222dbe7 |
| 09-Aug-2024 |
Viktor Szakats |
build: tidy up internal macro names for `libcurl.pc` Rename internal macros to match their `libcurl.pc` metadata counterpart. Also apply these to the `curl-config.in` template.
build: tidy up internal macro names for `libcurl.pc` Rename internal macros to match their `libcurl.pc` metadata counterpart. Also apply these to the `curl-config.in` template. - `CPPFLAG_CURL_STATICLIB` -> `LIBCURL_PC_CFLAGS` - `LIBCURL_LIBS` -> `LIBCURL_PC_LIBS_PRIVATE` - `LIBCURL_NO_SHARED` -> `LIBCURL_PC_LIBS` Closes #14476
show more ...
|
#
404679d2 |
| 31-Jul-2024 |
Viktor Szakats |
libcurl.pc: add `Cflags.private` Ref: https://manpages.debian.org/bookworm/pkgconf/pc.5.en.html#PROPERTY_KEYWORDS Ref: https://www.msys2.org/docs/pkgconfig/#cflagsprivate-static-librarie
libcurl.pc: add `Cflags.private` Ref: https://manpages.debian.org/bookworm/pkgconf/pc.5.en.html#PROPERTY_KEYWORDS Ref: https://www.msys2.org/docs/pkgconfig/#cflagsprivate-static-libraries Closes #14321
show more ...
|
#
f057de5a |
| 07-Jun-2024 |
Viktor Szakats |
libcurl.pc: add `Requires.private`, `Requires` for static linking - cmake: populate for dependencies. - autotools: populate for dependencies. (including mbedtls, though the script
libcurl.pc: add `Requires.private`, `Requires` for static linking - cmake: populate for dependencies. - autotools: populate for dependencies. (including mbedtls, though the script does not detect mbedtls through pkgconfig. mbedtls 3.6.0 now supports it.) Skip dealing with gssapi in this patch. Fixes #864 Closes #13911
show more ...
|
#
2bc1d775 |
| 02-Jan-2023 |
Daniel Stenberg |
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - save
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - saves us from pointless churn - git keeps history for us - the year range is kept in COPYING checksrc is updated to allow non-year using copyright statements Closes #10205
show more ...
|
#
ad9bc597 |
| 17-May-2022 |
max.mehl |
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the file `.reuse/dep5`. This commit also adds a Github workflow to check pull requests and adapts copyright.pl to the changes. Closes #8869
show more ...
|
Revision tags: curl-7_76_1, curl-7_76_0, curl-7_75_0, curl-7_74_0 |
|
#
259c70a9 |
| 07-Nov-2020 |
Daniel Stenberg |
Revert "libcurl.pc: make it relocatable" This reverts commit 3862c37b6373a55ca704171d45ba5ee91dec2c9f. That fix should either be done differently or with an option. Reporte
Revert "libcurl.pc: make it relocatable" This reverts commit 3862c37b6373a55ca704171d45ba5ee91dec2c9f. That fix should either be done differently or with an option. Reported-by: asavah on github Fixes #6157 Closes #6183
show more ...
|
#
4d2f8006 |
| 04-Nov-2020 |
Daniel Stenberg |
curl.se: new home Closes #6172
|
#
3862c37b |
| 11-Oct-2020 |
Cristian Morales Vega |
libcurl.pc: make it relocatable It supposes when people specify the libdir/includedir they do it to change where under prefix/exec_prefix it should be, not to make it independent of
libcurl.pc: make it relocatable It supposes when people specify the libdir/includedir they do it to change where under prefix/exec_prefix it should be, not to make it independent of prefix/exec_prefix. Closes #6061
show more ...
|
Revision tags: curl-7_73_0, tiny-curl-7_72_0, curl-7_72_0, curl-7_71_1, curl-7_71_0 |
|
#
98e59041 |
| 11-May-2020 |
James Le Cuirot |
libcurl.pc: Merge Libs.private into Libs for static-only builds A project being built entirely statically will call pkg-config with --static, which utilises the Libs.private field. Conve
libcurl.pc: Merge Libs.private into Libs for static-only builds A project being built entirely statically will call pkg-config with --static, which utilises the Libs.private field. Conversely it will not use --static when not being built entirely statically, even if there is only a static build of libcurl available. This will most likely cause the build to fail due to underlinking unless we merge the Libs fields. Consider that this is what the Meson build system does when it generates pkg-config files. I have also reflected this in the --libs argument of curl-config even though REQUIRE_LIB_DEPS always seems to be "yes" anyway. Closes #5373
show more ...
|
Revision tags: curl-7_70_0 |
|
#
9a8b3b3e |
| 23-Mar-2020 |
Daniel Stenberg |
copyright: fix out-of-date copyright ranges and missing headers Reported by the new script 'scripts/copyright.pl'. The script has a regex whitelist for the files that don't need copyrigh
copyright: fix out-of-date copyright ranges and missing headers Reported by the new script 'scripts/copyright.pl'. The script has a regex whitelist for the files that don't need copyright headers. Removed three (mostly usesless) README files from docs/ Closes #5141
show more ...
|
Revision tags: curl-7_69_1, curl-7_69_0, curl-7_68_0, curl-7_67_0, curl-7_66_0, curl-7_65_3, curl-7_65_2, curl-7_65_1, curl-7_65_0, curl-7_64_1, curl-7_64_0, curl-7_63_0, curl-7_62_0, curl-7_61_1, curl-7_61_0, curl-7_60_0, curl-7_59_0, curl-7_58_0, curl-7_57_0, curl-7_56_1, curl-7_56_0, curl-7_55_1, curl-7_55_0, curl-7_54_1, curl-7_54_0, curl-7_53_1, curl-7_53_0, curl-7_52_1, curl-7_52_0, curl-7_51_0, curl-7_50_3, curl-7_50_2, curl-7_50_1, curl-7_50_0, curl-7_49_1, curl-7_49_0, curl-7_48_0, curl-7_47_1 |
|
#
4af40b36 |
| 02-Feb-2016 |
Daniel Stenberg |
URLs: change all http:// URLs to https://
|
Revision tags: curl-7_47_0, curl-7_46_0, curl-7_45_0, curl-7_44_0, curl-7_43_0, curl-7_42_1, curl-7_42_0, curl-7_41_0, curl-7_40_0, curl-7_39_0, curl-7_38_0, curl-7_37_1, curl-7_37_0, curl-7_36_0, curl-7_35_0, curl-7_34_0, curl-7_33_0, curl-7_32_0, curl-7_31_0, curl-7_30_0, curl-7_29_0 |
|
#
068f7ae2 |
| 03-Dec-2012 |
Yang Tse |
build: prevent global LIBS from influencing src and lib build targets Currently, LIBS is already used through other macros.
|
Revision tags: curl-7_28_1, curl-7_28_0, curl-7_27_0 |
|
#
a379a4c1 |
| 25-May-2012 |
Yang Tse |
Fix libcurl.pc and curl-config generation for static MingW* cross builds
|
Revision tags: curl-7_26_0, curl-7_25_0, curl-7_24_0, curl-7_23_1, curl-7_23_0, curl-7_22_0, curl-7_21_7, curl-7_21_6, curl-7_21_5 |
|
#
ee4c1206 |
| 06-Apr-2011 |
Daniel Stenberg |
libcurl.pc: version number fix This hasn't show the version number correctly since the $VERSION change in the configure, and now it works again.
|
Revision tags: curl-7_21_4, curl-7_21_3, curl-7_21_2, curl-7_21_1, curl-7_21_0, curl-7_20_1 |
|
#
2309b4e3 |
| 24-Mar-2010 |
Daniel Stenberg |
remove the CVSish $Id$ lines
|
Revision tags: curl-7_20_0 |
|
#
4c8adc8f |
| 17-Nov-2009 |
Daniel Stenberg |
- Marc Kleine-Budde fixed: curl saved the LDFLAGS set during configure into its pkg-config file. So -Wl stuff ended up in the .pc file, which is really bad, and breaks if there are multi
- Marc Kleine-Budde fixed: curl saved the LDFLAGS set during configure into its pkg-config file. So -Wl stuff ended up in the .pc file, which is really bad, and breaks if there are multiple -Wl in our LDFLAGS (which are in PTXdist). bug #2893592 (http://curl.haxx.se/bug/view.cgi?id=2893592)
show more ...
|
Revision tags: curl-7_19_7, curl-7_19_6, curl-7_19_5, curl-7_19_4, curl-7_19_3, curl-7_19_2, curl-7_19_1 |
|
#
bbc002a5 |
| 02-Sep-2008 |
Daniel Stenberg |
- Keith Mok added supported_protocols and supported_features to the pkg-config file for libcurl, and while doing that fix he unified with curl-config.in how the supported protocols and fe
- Keith Mok added supported_protocols and supported_features to the pkg-config file for libcurl, and while doing that fix he unified with curl-config.in how the supported protocols and features are extracted and used, so both those tools should now always be synced.
show more ...
|
Revision tags: curl-7_19_0, curl-7_18_2, curl-7_18_1, curl-7_18_0, curl-7_17_1, curl-7_17_0, curl-7_17_0-preldapfix, curl-7_16_4, curl-7_16_3, curl-7_16_2 |
|
#
2691f1ef |
| 17-Feb-2007 |
Dan Fandrich |
Use configure's new LIBCURL_LIBS variable
|
Revision tags: curl-7_16_1 |
|
#
d86d1407 |
| 02-Jan-2007 |
Daniel Stenberg |
- Modified libcurl.pc.in to use Libs.private for the libs libcurl itself needs to get built static. It has been mentioned before and was again brought to our attention by Nathanael Nerode
- Modified libcurl.pc.in to use Libs.private for the libs libcurl itself needs to get built static. It has been mentioned before and was again brought to our attention by Nathanael Nerode who filed debian bug report #405226 (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=405226).
show more ...
|
Revision tags: curl-7_16_0, curl-7_15_6-prepipeline, curl-7_15_5, curl-7_15_4, curl-7_15_3, curl-7_15_2, curl-7_15_1, curl-7_15_0, curl-7_14_1, c-ares-1_3_0, curl-7_14_0, curl-7_13_2, curl-7_13_1, before_ftp_statemachine, curl-7_13_0, curl-7_12_3 |
|
#
3ca4509a |
| 11-Dec-2004 |
Daniel Stenberg |
Dan F's initial pkg-config file (not installed yet)
|