Skip to content

Commit

Permalink
Add curl 8.4.0 (#1666)
Browse files Browse the repository at this point in the history
  • Loading branch information
keith committed Mar 22, 2024
1 parent 08641e9 commit 6dd3a6d
Show file tree
Hide file tree
Showing 6 changed files with 283 additions and 0 deletions.
7 changes: 7 additions & 0 deletions modules/curl/8.4.0/MODULE.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
module(
name = "curl",
version = "8.4.0",
compatibility_level = 0,
)

bazel_dep(name = "platforms", version = "0.0.8")
222 changes: 222 additions & 0 deletions modules/curl/8.4.0/patches/add_build_file.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,222 @@
--- /dev/null
+++ BUILD.bazel
@@ -0,0 +1,219 @@
+# Copyright The OpenTelemetry Authors
+# SPDX-License-Identifier: Apache-2.0
+
+package(features = ["no_copts_tokenization"])
+
+_BASE_CURL_COPTS = [
+ # Disable everything else except HTTP protocol.
+ "-DHTTP_ONLY=1",
+ "-DENABLE_IPV6=1",
+ "-DGETHOSTNAME_TYPE_ARG2=size_t",
+ "-DGETSERVBYPORT_R_ARGS=6",
+ "-DGETSERVBYPORT_R_BUFSIZE=4096",
+ "-DHAVE_ALARM=1",
+ "-DHAVE_ALLOCA_H=1",
+ "-DHAVE_ARPA_INET_H=1",
+ "-DHAVE_ARPA_TFTP_H=1",
+ "-DHAVE_ASSERT_H=1",
+ "-DHAVE_BASENAME=1",
+ "-DHAVE_BOOL_T=1",
+ "-DHAVE_CLOCK_GETTIME_MONOTONIC=1",
+ "-DHAVE_CONNECT=1",
+ "-DHAVE_DLFCN_H=1",
+ "-DHAVE_ENGINE_LOAD_BUILTIN_ENGINES=1",
+ "-DHAVE_ERRNO_H=1",
+ "-DHAVE_FCNTL=1",
+ "-DHAVE_FCNTL_H=1",
+ "-DHAVE_FCNTL_O_NONBLOCK=1",
+ "-DHAVE_FDOPEN=1",
+ "-DHAVE_FREEADDRINFO=1",
+ "-DHAVE_FREEIFADDRS=1",
+ "-DHAVE_FSETXATTR=1",
+ "-DHAVE_FSETXATTR_5=1",
+ "-DHAVE_FTRUNCATE=1",
+ "-DHAVE_GAI_STRERROR=1",
+ "-DHAVE_GETADDRINFO=1",
+ "-DHAVE_GETADDRINFO_THREADSAFE=1",
+ "-DHAVE_GETEUID=1",
+ "-DHAVE_GETHOSTBYADDR=1",
+ "-DHAVE_GETHOSTBYADDR_R=1",
+ "-DHAVE_GETHOSTBYADDR_R_8=1",
+ "-DHAVE_GETHOSTBYNAME=1",
+ "-DHAVE_GETHOSTBYNAME_R=1",
+ "-DHAVE_GETHOSTBYNAME_R_6=1",
+ "-DHAVE_GETHOSTNAME=1",
+ "-DHAVE_GETIFADDRS=1",
+ "-DHAVE_GETNAMEINFO=1",
+ "-DHAVE_GETPPID=1",
+ "-DHAVE_GETPWUID=1",
+ "-DHAVE_GETPWUID_R=1",
+ "-DHAVE_GETRLIMIT=1",
+ "-DHAVE_GETSERVBYPORT_R=1",
+ "-DHAVE_GETTIMEOFDAY=1",
+ "-DHAVE_GMTIME_R=1",
+ "-DHAVE_IFADDRS_H=1",
+ "-DHAVE_IF_NAMETOINDEX=1",
+ "-DHAVE_INET_NTOP=1",
+ "-DHAVE_INET_PTON=1",
+ "-DHAVE_INTTYPES_H=1",
+ "-DHAVE_IOCTL=1",
+ "-DHAVE_IOCTL_FIONBIO=1",
+ "-DHAVE_IOCTL_SIOCGIFADDR=1",
+ "-DHAVE_LIBGEN_H=1",
+ "-DHAVE_LL=1",
+ "-DHAVE_LOCALE_H=1",
+ "-DHAVE_LOCALTIME_R=1",
+ "-DHAVE_LONGLONG=1",
+ "-DHAVE_MALLOC_H=1",
+ "-DHAVE_MEMORY_H=1",
+ "-DHAVE_NETDB_H=1",
+ "-DHAVE_NETINET_IN_H=1",
+ "-DHAVE_NETINET_TCP_H=1",
+ "-DHAVE_NET_IF_H=1",
+ "-DHAVE_PIPE=1",
+ "-DHAVE_POLL=1",
+ "-DHAVE_POLL_FINE=1",
+ "-DHAVE_POLL_H=1",
+ "-DHAVE_POSIX_STRERROR_R=1",
+ "-DHAVE_PTHREAD_H=1",
+ "-DHAVE_PWD_H=1",
+ "-DHAVE_RECV=1",
+ "-DHAVE_SELECT=1",
+ "-DHAVE_SEND=1",
+ "-DHAVE_SETJMP_H=1",
+ "-DHAVE_SETLOCALE=1",
+ "-DHAVE_SETRLIMIT=1",
+ "-DHAVE_SETSOCKOPT=1",
+ "-DHAVE_SGTTY_H=1",
+ "-DHAVE_SIGACTION=1",
+ "-DHAVE_SIGINTERRUPT=1",
+ "-DHAVE_SIGNAL=1",
+ "-DHAVE_SIGNAL_H=1",
+ "-DHAVE_SIGSETJMP=1",
+ "-DHAVE_SIG_ATOMIC_T=1",
+ "-DHAVE_SOCKADDR_IN6_SIN6_SCOPE_ID=1",
+ "-DHAVE_SOCKET=1",
+ "-DHAVE_SOCKETPAIR=1",
+ "-DHAVE_STDBOOL_H=1",
+ "-DHAVE_STDINT_H=1",
+ "-DHAVE_STDIO_H=1",
+ "-DHAVE_STDLIB_H=1",
+ "-DHAVE_STRCASECMP=1",
+ "-DHAVE_STRDUP=1",
+ "-DHAVE_STRERROR_R=1",
+ "-DHAVE_STRINGS_H=1",
+ "-DHAVE_STRING_H=1",
+ "-DHAVE_STRNCASECMP=1",
+ "-DHAVE_STRSTR=1",
+ "-DHAVE_STRTOK_R=1",
+ "-DHAVE_STRTOLL=1",
+ "-DHAVE_STRUCT_SOCKADDR_STORAGE=1",
+ "-DHAVE_STRUCT_TIMEVAL=1",
+ "-DHAVE_SYS_IOCTL_H=1",
+ "-DHAVE_SYS_PARAM_H=1",
+ "-DHAVE_SYS_POLL_H=1",
+ "-DHAVE_SYS_RESOURCE_H=1",
+ "-DHAVE_SYS_SELECT_H=1",
+ "-DHAVE_SYS_SOCKET_H=1",
+ "-DHAVE_SYS_STAT_H=1",
+ "-DHAVE_SYS_TIME_H=1",
+ "-DHAVE_SYS_TYPES_H=1",
+ "-DHAVE_SYS_UIO_H=1",
+ "-DHAVE_SYS_UN_H=1",
+ "-DHAVE_SYS_WAIT_H=1",
+ "-DHAVE_SYS_XATTR_H=1",
+ "-DHAVE_TERMIOS_H=1",
+ "-DHAVE_TERMIO_H=1",
+ "-DHAVE_TIME_H=1",
+ "-DHAVE_UNISTD_H=1",
+ "-DHAVE_UTIME=1",
+ "-DHAVE_UTIMES=1",
+ "-DHAVE_UTIME_H=1",
+ "-DHAVE_VARIADIC_MACROS_C99=1",
+ "-DHAVE_VARIADIC_MACROS_GCC=1",
+ "-DHAVE_WRITABLE_ARGV=1",
+ "-DHAVE_WRITEV=1",
+ "-DRECV_TYPE_ARG1=int",
+ "-DRECV_TYPE_ARG2=void*",
+ "-DRECV_TYPE_ARG3=size_t",
+ "-DRECV_TYPE_ARG4=int",
+ "-DRECV_TYPE_RETV=ssize_t",
+ "-DRETSIGTYPE=void",
+ "-DSELECT_QUAL_ARG5=",
+ "-DSELECT_TYPE_ARG1=int",
+ "-DSELECT_TYPE_ARG234=fd_set*",
+ "-DSELECT_TYPE_RETV=int",
+ "-DSEND_QUAL_ARG2=const",
+ "-DSEND_TYPE_ARG1=int",
+ "-DSEND_TYPE_ARG2=void*",
+ "-DSEND_TYPE_ARG3=size_t",
+ "-DSEND_TYPE_ARG4=int",
+ "-DSEND_TYPE_RETV=ssize_t",
+ "-DSIZEOF_CURL_OFF_T=8",
+ "-DSIZEOF_INT=4",
+ "-DSIZEOF_LONG=8",
+ "-DSIZEOF_OFF_T=8",
+ "-DSIZEOF_SHORT=2",
+ "-DSIZEOF_SIZE_T=8",
+ "-DSIZEOF_TIME_T=8",
+ "-DSTDC_HEADERS=1",
+ "-DSTRERROR_R_TYPE_ARG3=size_t",
+ "-DTIME_WITH_SYS_TIME=1",
+ "-DUSE_THREADS_POSIX=1",
+ "-DUSE_UNIX_SOCKETS=1",
+
+ # Extra defines needed by curl
+ "-DBUILDING_LIBCURL",
+ "-DCURL_HIDDEN_SYMBOLS",
+]
+
+cc_library(
+ name = "curl",
+ srcs = glob([
+ "lib/**/*.c",
+ ]),
+ hdrs = glob([
+ "include/curl/*.h",
+ "lib/**/*.h",
+ ]),
+ copts = select({
+ "@platforms//os:windows": [
+ "/DCURL_STATICLIB",
+ "/DWIN32",
+ "/DBUILDING_LIBCURL",
+ "/DUSE_WIN32_IDN",
+ "/DWANT_IDN_PROTOTYPES",
+ "/DUSE_IPV6",
+ "/DUSE_WINDOWS_SSPI",
+ "/DUSE_SCHANNEL",
+ ],
+ "@platforms//os:macos": _BASE_CURL_COPTS,
+ "//conditions:default": _BASE_CURL_COPTS + [
+ "-DHAVE_LINUX_TCP_H=1",
+ "-DHAVE_MSG_NOSIGNAL=1",
+ ],
+ }) + [
+ "-DOS=\"os\"",
+ ],
+ defines = ["CURL_STATICLIB"],
+ includes = [
+ "include/",
+ "lib/",
+ ],
+ linkopts = select({
+ "@platforms//os:windows": [
+ "-DEFAULTLIB:ws2_32.lib",
+ "-DEFAULTLIB:advapi32.lib",
+ "-DEFAULTLIB:crypt32.lib",
+ "-DEFAULTLIB:Normaliz.lib",
+ ],
+ "@platforms//os:macos": [
+ "-Wl,-framework,SystemConfiguration",
+ "-lpthread",
+ ],
+ "//conditions:default": [
+ "-lpthread",
+ ],
+ }),
+ visibility = ["//visibility:public"],
+)
10 changes: 10 additions & 0 deletions modules/curl/8.4.0/patches/module_dot_bazel.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- MODULE.bazel
+++ MODULE.bazel
@@ -0,0 +1,7 @@
+module(
+ name = "curl",
+ version = "8.4.0",
+ compatibility_level = 0,
+)
+
+bazel_dep(name = "platforms", version = "0.0.8")
17 changes: 17 additions & 0 deletions modules/curl/8.4.0/presubmit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
matrix:
platform:
- debian10
- ubuntu2004
- macos
- macos_arm64
- windows
bazel:
- 7.x
- 6.x
tasks:
verify_targets:
name: Verify build targets
platform: ${{ platform }}
bazel: ${{ bazel }}
build_targets:
- '@curl//:curl'
10 changes: 10 additions & 0 deletions modules/curl/8.4.0/source.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"url": "https://github.com/curl/curl/releases/download/curl-8_4_0/curl-8.4.0.tar.gz",
"integrity": "sha256-gW5BgJwEP/KF6MDwanWh+iUCEbv7LcCgN+7vOfGp5Cc=",
"strip_prefix": "curl-8.4.0",
"patch_strip": 0,
"patches": {
"add_build_file.patch": "sha256-Vcb973u9Diuzp+nG0XzkID+LvaTdbJ6M6tZxH1Vtyo0=",
"module_dot_bazel.patch": "sha256-EEYIkUUDdDiyntAtQHOhsgwqJgs/EvZP6pjuxPUeWIo="
}
}
17 changes: 17 additions & 0 deletions modules/curl/metadata.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"homepage": "https://github.com/curl/curl",
"maintainers": [
{
"email": "[email protected]",
"github": "keith",
"name": "Keith Smiley"
}
],
"repository": [
"github:curl/curl"
],
"versions": [
"8.4.0"
],
"yanked_versions": {}
}

0 comments on commit 6dd3a6d

Please sign in to comment.