Skip to content
Snippets Groups Projects
This project is mirrored from https://gitlab.com/gitlab-org/build/omnibus-mirror/curl.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
  1. Sep 22, 2024
  2. Sep 21, 2024
    • Daniel Stenberg's avatar
      RELEASE-NOTES: synced · 8afdf8dc
      Daniel Stenberg authored
      8afdf8dc
    • Viktor Szakats's avatar
      build: use `configurehelp.pm.in` with autotools and cmake · 867c187f
      Viktor Szakats authored
      Before this patch, each build tool generated `tests/configurehelp.pm`
      manually.
      
      Ref: https://github.com/curl/curl/pull/14802#issuecomment-2332734326
      Closes #14819
      867c187f
    • Viktor Szakats's avatar
      build: tidy up and improve versioned-symbols options · 7100c5bc
      Viktor Szakats authored
      - autotools: add support for custom prefix.
        Usage: `--enable-versioned-symbols=MYPREFIX_`
        Catching up with cmake.
      
      - add default versioned prefix for Rustls builds.
      
      - delete `HIDDEN` entry from version script `lib/libcurl.vers.in`.
        It referred to symbol names that never existed in libcurl.
      
      - cmake: use `lib/libcurl.vers.in` as a template instead of generating
        it from scratch. Adapt `./configure` accordingly, and add comments
        to keep hard-wired soname in sync with `lib/Makefile.soname`.
      
      - autotools: delete Schannel and Secure Transport version prefixes.
        Windows and macOS don't support the versioned symbols option.
      
      Follow-up to 7b144497 #14378
      Closes #14818
      7100c5bc
    • Viktor Szakats's avatar
      configure: catch Apple in more target triplets · 30ab1133
      Viktor Szakats authored
      Before this patch, only these triplets were considered Apple:
      `<cpu>-apple-darwin`
      
      After this patch, these are also considered Apple:
      `<cpu>-apple-(ios*|tvos*|visionos*|watchos*|<ETC>)`
      
      `$host_os` (the last third of the triplet) still has a valid use
      to differentiate between OS flavours, though for now this isn't
      used, aligning with CMake.
      
      Closes #14728
      30ab1133
    • Viktor Szakats's avatar
      GHA/configure-vs-cmake: check `libcurl.pc`/`curl-config`, fix issues · 9f56bb60
      Viktor Szakats authored
      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
      9f56bb60
    • Viktor Szakats's avatar
      ipfs: add options to disable · ce7d0d41
      Viktor Szakats authored
      - CPPFLAGS: `-DCURL_DISABLE_IPFS`
      - configure: `--disable-ipfs`
      - cmake: `-DCURL_DISABLE_IPFS=ON`
      
      Fixes #14824
      Closes #14827
      ce7d0d41
    • Viktor Szakats's avatar
      src: tidy-up conditions for CA bundle search · 8b42df3e
      Viktor Szakats authored
      - delete redundant Schannel check.
      
      - move `feature_ssl` check one level up from `FindWin32CACert()`.
      
      - check `feature_ssl` early to skip a bunch of CA bundle search logic
        for no-ssl configurations.
      
      Reviewed-by: Jay Satiro
      Closes #14841
      8b42df3e
    • Dan Fandrich's avatar
      CI: enable RTMP and WebSockets in old Linux build · fb35a5fe
      Dan Fandrich authored
      Try to enable as much as possible to check for compatibility with old
      dependencies.
      fb35a5fe
  3. Sep 20, 2024