Init
This commit is contained in:
commit
184645ba63
73 changed files with 4983 additions and 0 deletions
534
libs/curl.zig
Normal file
534
libs/curl.zig
Normal file
|
@ -0,0 +1,534 @@
|
|||
const std = @import("std");
|
||||
|
||||
pub fn create(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.builtin.OptimizeMode) !*std.Build.Step.Compile {
|
||||
const lib = b.addStaticLibrary(.{
|
||||
.name = "curl",
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.linkLibC();
|
||||
|
||||
const curl_dep = b.dependency("curl", .{
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.addCSourceFiles(.{
|
||||
.root = curl_dep.path(""),
|
||||
.files = srcs,
|
||||
.flags = &.{"-std=gnu89"},
|
||||
});
|
||||
|
||||
lib.addIncludePath(curl_dep.path("lib"));
|
||||
lib.addIncludePath(curl_dep.path("include"));
|
||||
lib.installHeadersDirectory(curl_dep.path("include/curl"), "curl", .{});
|
||||
|
||||
lib.root_module.addCMacro("BUILDING_LIBCURL", "1");
|
||||
lib.root_module.addCMacro("CURL_STATICLIB", "1");
|
||||
|
||||
lib.root_module.addCMacro("USE_MBEDTLS", "1");
|
||||
|
||||
lib.root_module.addCMacro("CURL_DISABLE_COOKIES", "1"); // fix sterrror_r confusion
|
||||
|
||||
lib.root_module.addCMacro("CURL_DISABLE_DICT", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_GOPHER", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_HSTS", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_IMAP", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_LDAP", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_LDAPS", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_MQTT", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_POP3", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_RTSP", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_SMTP", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_TELNET", "1");
|
||||
lib.root_module.addCMacro("CURL_DISABLE_TFTP", "1");
|
||||
lib.root_module.addCMacro("CURL_EXTERN_SYMBOL", "__attribute__((__visibility__(\"default\")))");
|
||||
lib.root_module.addCMacro("CURL_OS", "\"armv7-unknown-linux-gnueabihf\"");
|
||||
lib.root_module.addCMacro("GETHOSTNAME_TYPE_ARG2", "unsigned int");
|
||||
lib.root_module.addCMacro("HAVE_ALARM", "1");
|
||||
lib.root_module.addCMacro("HAVE_ARPA_INET_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_ATOMIC", "1");
|
||||
lib.root_module.addCMacro("HAVE_BASENAME", "1");
|
||||
lib.root_module.addCMacro("HAVE_BOOL_T", "1");
|
||||
lib.root_module.addCMacro("HAVE_CLOCK_GETTIME_MONOTONIC", "1");
|
||||
lib.root_module.addCMacro("HAVE_CLOCK_GETTIME_MONOTONIC_RAW", "1");
|
||||
lib.root_module.addCMacro("HAVE_DECL_FSEEKO", "1");
|
||||
lib.root_module.addCMacro("HAVE_DIRENT_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_DLFCN_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_EVENTFD", "1");
|
||||
lib.root_module.addCMacro("HAVE_FCNTL", "1");
|
||||
lib.root_module.addCMacro("HAVE_FCNTL_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_FCNTL_O_NONBLOCK", "1");
|
||||
lib.root_module.addCMacro("HAVE_FNMATCH", "1");
|
||||
lib.root_module.addCMacro("HAVE_FREEADDRINFO", "1");
|
||||
lib.root_module.addCMacro("HAVE_FSEEKO", "1");
|
||||
lib.root_module.addCMacro("HAVE_FSETXATTR", "1");
|
||||
lib.root_module.addCMacro("HAVE_FSETXATTR_5", "1");
|
||||
lib.root_module.addCMacro("HAVE_FTRUNCATE", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETADDRINFO", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETADDRINFO_THREADSAFE", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETEUID", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETHOSTBYNAME_R", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETHOSTBYNAME_R_6", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETHOSTNAME", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETIFADDRS", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETPEERNAME", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETPPID", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETPWUID", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETPWUID_R", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETRLIMIT", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETSOCKNAME", "1");
|
||||
lib.root_module.addCMacro("HAVE_GETTIMEOFDAY", "1");
|
||||
lib.root_module.addCMacro("HAVE_POSIX_STRERROR_R", "1");
|
||||
lib.root_module.addCMacro("HAVE_GMTIME_R", "1");
|
||||
lib.root_module.addCMacro("HAVE_IFADDRS_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_IF_NAMETOINDEX", "1");
|
||||
lib.root_module.addCMacro("HAVE_INET_NTOP", "1");
|
||||
lib.root_module.addCMacro("HAVE_INET_PTON", "1");
|
||||
lib.root_module.addCMacro("HAVE_INTTYPES_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_IOCTL_FIONBIO", "1");
|
||||
lib.root_module.addCMacro("HAVE_IOCTL_SIOCGIFADDR", "1");
|
||||
lib.root_module.addCMacro("HAVE_LIBGEN_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_LINUX_TCP_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_LOCALE_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_LONGLONG", "1");
|
||||
lib.root_module.addCMacro("HAVE_MEMRCHR", "1");
|
||||
lib.root_module.addCMacro("HAVE_MSG_NOSIGNAL", "1");
|
||||
lib.root_module.addCMacro("HAVE_NETDB_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_NETINET_IN_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_NETINET_TCP_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_NETINET_UDP_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_NET_IF_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_OPENDIR", "1");
|
||||
lib.root_module.addCMacro("HAVE_PIPE", "1");
|
||||
lib.root_module.addCMacro("HAVE_POLL", "1");
|
||||
lib.root_module.addCMacro("HAVE_POLL_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_PTHREAD_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_PWD_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_REALPATH", "1");
|
||||
lib.root_module.addCMacro("HAVE_RECV", "1");
|
||||
lib.root_module.addCMacro("HAVE_SA_FAMILY_T", "1");
|
||||
lib.root_module.addCMacro("HAVE_SCHED_YIELD", "1");
|
||||
lib.root_module.addCMacro("HAVE_SELECT", "1");
|
||||
lib.root_module.addCMacro("HAVE_SEND", "1");
|
||||
lib.root_module.addCMacro("HAVE_SENDMSG", "1");
|
||||
lib.root_module.addCMacro("HAVE_SETLOCALE", "1");
|
||||
lib.root_module.addCMacro("HAVE_SETRLIMIT", "1");
|
||||
lib.root_module.addCMacro("HAVE_SIGACTION", "1");
|
||||
lib.root_module.addCMacro("HAVE_SIGINTERRUPT", "1");
|
||||
lib.root_module.addCMacro("HAVE_SIGNAL", "1");
|
||||
lib.root_module.addCMacro("HAVE_SIGSETJMP", "1");
|
||||
lib.root_module.addCMacro("HAVE_SNPRINTF", "1");
|
||||
lib.root_module.addCMacro("HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID", "1");
|
||||
lib.root_module.addCMacro("HAVE_SOCKET", "1");
|
||||
lib.root_module.addCMacro("HAVE_SOCKETPAIR", "1");
|
||||
lib.root_module.addCMacro("HAVE_STDATOMIC_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_STDBOOL_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_STDINT_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_STDIO_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_STDLIB_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRCASECMP", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRDUP", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRERROR_R", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRINGS_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRING_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRTOK_R", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRTOLL", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRUCT_SOCKADDR_STORAGE", "1");
|
||||
lib.root_module.addCMacro("HAVE_STRUCT_TIMEVAL", "1");
|
||||
lib.root_module.addCMacro("HAVE_SUSECONDS_T", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_EVENTFD_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_IOCTL_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_PARAM_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_POLL_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_RESOURCE_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_SELECT_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_SOCKET_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_STAT_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_TIME_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_TYPES_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_UN_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_SYS_XATTR_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_TERMIOS_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_TERMIO_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_UNISTD_H", "1");
|
||||
lib.root_module.addCMacro("HAVE_UTIME", "1");
|
||||
lib.root_module.addCMacro("HAVE_UTIMES", "1");
|
||||
lib.root_module.addCMacro("HAVE_UTIME_H", "1");
|
||||
lib.root_module.addCMacro("LT_OBJDIR", "\".libs/\"");
|
||||
lib.root_module.addCMacro("PACKAGE", "\"curl\"");
|
||||
lib.root_module.addCMacro("PACKAGE_BUGREPORT", "\"a suitable curl mailing list: https://curl.se/mail/\"");
|
||||
lib.root_module.addCMacro("PACKAGE_NAME", "\"curl\"");
|
||||
lib.root_module.addCMacro("PACKAGE_STRING", "\"curl -\"");
|
||||
lib.root_module.addCMacro("PACKAGE_TARNAME", "\"curl\"");
|
||||
lib.root_module.addCMacro("PACKAGE_URL", "\"\"");
|
||||
lib.root_module.addCMacro("PACKAGE_VERSION", "\" - \"");
|
||||
lib.root_module.addCMacro("SIZEOF_CURL_OFF_T", "8");
|
||||
lib.root_module.addCMacro("SIZEOF_CURL_SOCKET_T", "4");
|
||||
lib.root_module.addCMacro("SIZEOF_INT", "4");
|
||||
lib.root_module.addCMacro("SIZEOF_LONG", "4");
|
||||
lib.root_module.addCMacro("SIZEOF_OFF_T", "8");
|
||||
lib.root_module.addCMacro("SIZEOF_SIZE_T", "4");
|
||||
lib.root_module.addCMacro("SIZEOF_TIME_T", "4");
|
||||
lib.root_module.addCMacro("STDC_HEADERS", "1");
|
||||
lib.root_module.addCMacro("USE_IPV6", "1");
|
||||
lib.root_module.addCMacro("USE_THREADS_POSIX", "1");
|
||||
lib.root_module.addCMacro("USE_UNIX_SOCKETS", "1");
|
||||
lib.root_module.addCMacro("VERSION", "\"-\"");
|
||||
lib.root_module.addCMacro("_FILE_OFFSET_BITS", "64");
|
||||
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_LDAP", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_LDAPS", "1");
|
||||
// lib.root_module.addCMacro("USE_MBEDTLS", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_DICT", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_FILE", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_FTP", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_GOPHER", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_IMAP", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_MQTT", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_POP3", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_RTSP", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_SMB", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_SMTP", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_TELNET", "1");
|
||||
// lib.root_module.addCMacro("CURL_DISABLE_TFTP", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LIBZ", "1");
|
||||
// lib.root_module.addCMacro("HAVE_ZLIB_H", "1");
|
||||
|
||||
// lib.root_module.addCMacro("CURL_EXTERN_SYMBOL", "__attribute__ ((__visibility__ (\"default\"))");
|
||||
|
||||
// lib.root_module.addCMacro("ENABLE_IPV6", "1");
|
||||
// lib.root_module.addCMacro("HAVE_ALARM", "1");
|
||||
// lib.root_module.addCMacro("HAVE_ALLOCA_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_ARPA_INET_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_ARPA_TFTP_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_ASSERT_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_BASENAME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_BOOL_T", "1");
|
||||
// lib.root_module.addCMacro("HAVE_BUILTIN_AVAILABLE", "1");
|
||||
// lib.root_module.addCMacro("HAVE_CLOCK_GETTIME_MONOTONIC", "1");
|
||||
// lib.root_module.addCMacro("HAVE_DLFCN_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_ERRNO_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_FCNTL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_FCNTL_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_FCNTL_O_NONBLOCK", "1");
|
||||
// lib.root_module.addCMacro("HAVE_FREEADDRINFO", "1");
|
||||
// lib.root_module.addCMacro("HAVE_FTRUNCATE", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETADDRINFO", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETEUID", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETPPID", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETHOSTBYNAME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETHOSTBYNAME_R", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETHOSTBYNAME_R_6", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETHOSTNAME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETPPID", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETPROTOBYNAME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETPEERNAME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETSOCKNAME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_IF_NAMETOINDEX", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETPWUID", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETPWUID_R", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETRLIMIT", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GETTIMEOFDAY", "1");
|
||||
// lib.root_module.addCMacro("HAVE_GMTIME_R", "1");
|
||||
// lib.root_module.addCMacro("HAVE_IFADDRS_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_INET_ADDR", "1");
|
||||
// lib.root_module.addCMacro("HAVE_INET_PTON", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SA_FAMILY_T", "1");
|
||||
// lib.root_module.addCMacro("HAVE_INTTYPES_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_IOCTL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_IOCTL_FIONBIO", "1");
|
||||
// lib.root_module.addCMacro("HAVE_IOCTL_SIOCGIFADDR", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LDAP_URL_PARSE", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LIBGEN_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_IDN2_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LOCALE_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LOCALTIME_R", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LONGLONG", "1");
|
||||
// lib.root_module.addCMacro("HAVE_MALLOC_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_MEMORY_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_MSG_NOSIGNAL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_NETDB_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_NETINET_IN_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_NETINET_TCP_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_LINUX_TCP_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_NET_IF_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_PIPE", "1");
|
||||
// lib.root_module.addCMacro("HAVE_POLL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_POLL_FINE", "1");
|
||||
// lib.root_module.addCMacro("HAVE_POLL_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_POSIX_STRERROR_R", "1");
|
||||
// lib.root_module.addCMacro("HAVE_PTHREAD_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_PWD_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_RECV", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SELECT", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SEND", "1");
|
||||
// lib.root_module.addCMacro("HAVE_FSETXATTR", "1");
|
||||
// lib.root_module.addCMacro("HAVE_FSETXATTR_5", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SETJMP_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SETLOCALE", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SETRLIMIT", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SETSOCKOPT", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SIGACTION", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SIGINTERRUPT", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SIGNAL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SIGNAL_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SIGSETJMP", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SOCKET", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STDBOOL_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STDINT_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STDIO_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STDLIB_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRCASECMP", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRDUP", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRERROR_R", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRINGS_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRING_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRSTR", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRTOK_R", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRTOLL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRUCT_SOCKADDR_STORAGE", "1");
|
||||
// lib.root_module.addCMacro("HAVE_STRUCT_TIMEVAL", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_IOCTL_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_PARAM_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_POLL_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_RESOURCE_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_SELECT_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_SOCKET_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_STAT_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_TIME_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_TYPES_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_UIO_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_SYS_UN_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_TERMIOS_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_TERMIO_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_TIME_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_UNAME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_UNISTD_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_UTIME", "1");
|
||||
// lib.root_module.addCMacro("HAVE_UTIMES", "1");
|
||||
// lib.root_module.addCMacro("HAVE_UTIME_H", "1");
|
||||
// lib.root_module.addCMacro("HAVE_VARIADIC_MACROS_C99", "1");
|
||||
// lib.root_module.addCMacro("HAVE_VARIADIC_MACROS_GCC", "1");
|
||||
// lib.root_module.addCMacro("OS", "\"Linux\"");
|
||||
// lib.root_module.addCMacro("RANDOM_FILE", "\"/dev/urandom\"");
|
||||
// lib.root_module.addCMacro("RECV_TYPE_ARG1", "int");
|
||||
// lib.root_module.addCMacro("RECV_TYPE_ARG2", "void *");
|
||||
// lib.root_module.addCMacro("RECV_TYPE_ARG3", "size_t");
|
||||
// lib.root_module.addCMacro("RECV_TYPE_ARG4", "int");
|
||||
// lib.root_module.addCMacro("RECV_TYPE_RETV", "ssize_t");
|
||||
// lib.root_module.addCMacro("SEND_QUAL_ARG2", "const");
|
||||
// lib.root_module.addCMacro("SEND_TYPE_ARG1", "int");
|
||||
// lib.root_module.addCMacro("SEND_TYPE_ARG2", "void *");
|
||||
// lib.root_module.addCMacro("SEND_TYPE_ARG3", "size_t");
|
||||
// lib.root_module.addCMacro("SEND_TYPE_ARG4", "int");
|
||||
// lib.root_module.addCMacro("SEND_TYPE_RETV", "ssize_t");
|
||||
|
||||
// var buf: [2]u8 = undefined;
|
||||
|
||||
// lib.root_module.addCMacro(
|
||||
// "SIZEOF_INT",
|
||||
// try std.fmt.bufPrint(&buf, "{d}", .{target.result.c_type_byte_size(.int)}),
|
||||
// );
|
||||
// lib.root_module.addCMacro(
|
||||
// "SIZEOF_SHORT",
|
||||
// try std.fmt.bufPrint(&buf, "{d}", .{target.result.c_type_byte_size(.short)}),
|
||||
// );
|
||||
|
||||
// const long = try std.fmt.bufPrint(&buf, "{d}", .{target.result.c_type_byte_size(.long)});
|
||||
// lib.root_module.addCMacro(
|
||||
// "SIZEOF_LONG",
|
||||
// long,
|
||||
// );
|
||||
// lib.root_module.addCMacro("SIZEOF_OFF_T", "8");
|
||||
// lib.root_module.addCMacro("SIZEOF_CURL_OFF_T", "8");
|
||||
// lib.root_module.addCMacro("SIZEOF_SIZE_T", "8");
|
||||
// lib.root_module.addCMacro("SIZEOF_TIME_T", "8");
|
||||
|
||||
// lib.root_module.addCMacro("STDC_HEADERS", "1");
|
||||
// lib.root_module.addCMacro("TIME_WITH_SYS_TIME", "1");
|
||||
// lib.root_module.addCMacro("USE_THREADS_POSIX", "1");
|
||||
// lib.root_module.addCMacro("USE_UNIX_SOCKETS", "1");
|
||||
// lib.root_module.addCMacro("_FILE_OFFSET_BITS", "64");
|
||||
|
||||
return lib;
|
||||
}
|
||||
|
||||
const srcs = &.{
|
||||
"lib/ws.c",
|
||||
"lib/warnless.c",
|
||||
"lib/vtls/x509asn1.c",
|
||||
"lib/vtls/wolfssl.c",
|
||||
"lib/vtls/vtls_spack.c",
|
||||
"lib/vtls/vtls_scache.c",
|
||||
"lib/vtls/vtls.c",
|
||||
"lib/vtls/sectransp.c",
|
||||
"lib/vtls/schannel_verify.c",
|
||||
"lib/vtls/schannel.c",
|
||||
"lib/vtls/rustls.c",
|
||||
"lib/vtls/openssl.c",
|
||||
"lib/vtls/mbedtls_threadlock.c",
|
||||
"lib/vtls/mbedtls.c",
|
||||
"lib/vtls/keylog.c",
|
||||
"lib/vtls/hostcheck.c",
|
||||
"lib/vtls/gtls.c",
|
||||
"lib/vtls/cipher_suite.c",
|
||||
"lib/vtls/bearssl.c",
|
||||
"lib/vssh/wolfssh.c",
|
||||
"lib/vssh/libssh2.c",
|
||||
"lib/vssh/libssh.c",
|
||||
"lib/vssh/curl_path.c",
|
||||
"lib/vquic/vquic.c",
|
||||
"lib/vquic/vquic-tls.c",
|
||||
"lib/vquic/curl_quiche.c",
|
||||
"lib/vquic/curl_osslq.c",
|
||||
"lib/vquic/curl_ngtcp2.c",
|
||||
"lib/vquic/curl_msh3.c",
|
||||
"lib/version_win32.c",
|
||||
"lib/version.c",
|
||||
"lib/vauth/vauth.c",
|
||||
"lib/vauth/spnego_sspi.c",
|
||||
"lib/vauth/spnego_gssapi.c",
|
||||
"lib/vauth/oauth2.c",
|
||||
"lib/vauth/ntlm_sspi.c",
|
||||
"lib/vauth/ntlm.c",
|
||||
"lib/vauth/krb5_sspi.c",
|
||||
"lib/vauth/krb5_gssapi.c",
|
||||
"lib/vauth/gsasl.c",
|
||||
"lib/vauth/digest_sspi.c",
|
||||
"lib/vauth/digest.c",
|
||||
"lib/vauth/cram.c",
|
||||
"lib/vauth/cleartext.c",
|
||||
"lib/urlapi.c",
|
||||
"lib/url.c",
|
||||
"lib/transfer.c",
|
||||
"lib/timeval.c",
|
||||
"lib/timediff.c",
|
||||
"lib/tftp.c",
|
||||
"lib/telnet.c",
|
||||
"lib/system_win32.c",
|
||||
"lib/strtoofft.c",
|
||||
"lib/strtok.c",
|
||||
"lib/strparse.c",
|
||||
"lib/strerror.c",
|
||||
"lib/strdup.c",
|
||||
"lib/strcase.c",
|
||||
"lib/splay.c",
|
||||
"lib/speedcheck.c",
|
||||
"lib/socks_sspi.c",
|
||||
"lib/socks_gssapi.c",
|
||||
"lib/socks.c",
|
||||
"lib/socketpair.c",
|
||||
"lib/smtp.c",
|
||||
"lib/smb.c",
|
||||
"lib/slist.c",
|
||||
"lib/share.c",
|
||||
"lib/sha256.c",
|
||||
"lib/setopt.c",
|
||||
"lib/sendf.c",
|
||||
"lib/select.c",
|
||||
"lib/rtsp.c",
|
||||
"lib/request.c",
|
||||
"lib/rename.c",
|
||||
"lib/rand.c",
|
||||
"lib/psl.c",
|
||||
"lib/progress.c",
|
||||
"lib/pop3.c",
|
||||
"lib/pingpong.c",
|
||||
"lib/parsedate.c",
|
||||
"lib/openldap.c",
|
||||
"lib/noproxy.c",
|
||||
"lib/nonblock.c",
|
||||
"lib/netrc.c",
|
||||
"lib/multi.c",
|
||||
"lib/mqtt.c",
|
||||
"lib/mprintf.c",
|
||||
"lib/mime.c",
|
||||
"lib/memdebug.c",
|
||||
"lib/md5.c",
|
||||
"lib/md4.c",
|
||||
"lib/macos.c",
|
||||
"lib/llist.c",
|
||||
"lib/ldap.c",
|
||||
"lib/krb5.c",
|
||||
"lib/inet_pton.c",
|
||||
"lib/inet_ntop.c",
|
||||
"lib/imap.c",
|
||||
"lib/if2ip.c",
|
||||
"lib/idn.c",
|
||||
"lib/httpsrr.c",
|
||||
"lib/http_proxy.c",
|
||||
"lib/http_ntlm.c",
|
||||
"lib/http_negotiate.c",
|
||||
"lib/http_digest.c",
|
||||
"lib/http_chunks.c",
|
||||
"lib/http_aws_sigv4.c",
|
||||
"lib/http2.c",
|
||||
"lib/http1.c",
|
||||
"lib/http.c",
|
||||
"lib/hsts.c",
|
||||
"lib/hostsyn.c",
|
||||
"lib/hostip6.c",
|
||||
"lib/hostip4.c",
|
||||
"lib/hostip.c",
|
||||
"lib/hostasyn.c",
|
||||
"lib/hmac.c",
|
||||
"lib/headers.c",
|
||||
"lib/hash.c",
|
||||
"lib/gopher.c",
|
||||
"lib/getinfo.c",
|
||||
"lib/getenv.c",
|
||||
"lib/ftplistparser.c",
|
||||
"lib/ftp.c",
|
||||
"lib/formdata.c",
|
||||
"lib/fopen.c",
|
||||
"lib/fileinfo.c",
|
||||
"lib/file.c",
|
||||
"lib/escape.c",
|
||||
"lib/easyoptions.c",
|
||||
"lib/easygetopt.c",
|
||||
"lib/easy.c",
|
||||
"lib/dynhds.c",
|
||||
"lib/dynbuf.c",
|
||||
"lib/doh.c",
|
||||
"lib/dllmain.c",
|
||||
"lib/dict.c",
|
||||
"lib/cw-out.c",
|
||||
"lib/curl_trc.c",
|
||||
"lib/curl_threads.c",
|
||||
"lib/curl_sspi.c",
|
||||
"lib/curl_sha512_256.c",
|
||||
"lib/curl_sasl.c",
|
||||
"lib/curl_rtmp.c",
|
||||
"lib/curl_range.c",
|
||||
"lib/curl_ntlm_core.c",
|
||||
"lib/curl_multibyte.c",
|
||||
"lib/curl_memrchr.c",
|
||||
"lib/curl_gssapi.c",
|
||||
"lib/curl_gethostname.c",
|
||||
"lib/curl_get_line.c",
|
||||
"lib/curl_fnmatch.c",
|
||||
"lib/curl_endian.c",
|
||||
"lib/curl_des.c",
|
||||
"lib/curl_addrinfo.c",
|
||||
"lib/cookie.c",
|
||||
"lib/content_encoding.c",
|
||||
"lib/connect.c",
|
||||
"lib/conncache.c",
|
||||
"lib/cfilters.c",
|
||||
"lib/cf-socket.c",
|
||||
"lib/cf-https-connect.c",
|
||||
"lib/cf-haproxy.c",
|
||||
"lib/cf-h2-proxy.c",
|
||||
"lib/cf-h1-proxy.c",
|
||||
"lib/bufref.c",
|
||||
"lib/bufq.c",
|
||||
"lib/base64.c",
|
||||
"lib/asyn-thread.c",
|
||||
"lib/asyn-ares.c",
|
||||
"lib/amigaos.c",
|
||||
"lib/altsvc.c",
|
||||
};
|
31
libs/evdev/capture_out.zig
Normal file
31
libs/evdev/capture_out.zig
Normal file
|
@ -0,0 +1,31 @@
|
|||
//! Capture stdout and write it into the <file>.
|
||||
//! Usage: capture_out <file> <command> [args...]
|
||||
|
||||
const std = @import("std");
|
||||
|
||||
pub fn main() !void {
|
||||
const allocator = std.heap.page_allocator;
|
||||
|
||||
var arg_iter = std.process.args();
|
||||
defer arg_iter.deinit();
|
||||
|
||||
_ = arg_iter.next();
|
||||
const outpath = arg_iter.next() orelse unreachable;
|
||||
|
||||
var args = std.ArrayList([]const u8).init(allocator);
|
||||
defer args.deinit();
|
||||
while (arg_iter.next()) |arg| try args.append(arg);
|
||||
|
||||
const res = try std.process.Child.run(.{
|
||||
.allocator = allocator,
|
||||
.argv = args.items,
|
||||
.max_output_bytes = std.math.maxInt(usize),
|
||||
});
|
||||
|
||||
var out = try std.fs.cwd().createFile(outpath, .{});
|
||||
defer out.close();
|
||||
try out.writeAll(res.stdout);
|
||||
try std.io.getStdErr().writer().writeAll(res.stderr);
|
||||
|
||||
std.process.exit(res.term.Exited);
|
||||
}
|
74
libs/evdev/root.zig
Normal file
74
libs/evdev/root.zig
Normal file
|
@ -0,0 +1,74 @@
|
|||
const std = @import("std");
|
||||
|
||||
pub fn create(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.builtin.OptimizeMode) *std.Build.Step.Compile {
|
||||
const lib = b.addStaticLibrary(.{
|
||||
.name = "evdev",
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.linkLibC();
|
||||
lib.linkSystemLibrary("rt");
|
||||
|
||||
const evdev_dep = b.dependency("libevdev", .{
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.addConfigHeader(b.addConfigHeader(.{ .include_path = "config.h" }, .{
|
||||
._GNU_SOURCE = 1,
|
||||
}));
|
||||
|
||||
const event_names_h = b: {
|
||||
const run = b.addRunArtifact(b.addExecutable(.{
|
||||
.name = "capture_out",
|
||||
.root_source_file = b.path("libs/evdev/capture_out.zig"),
|
||||
.target = b.graph.host,
|
||||
}));
|
||||
const out = run.addOutputFileArg("libevdev/event-names.h");
|
||||
run.addFileArg(evdev_dep.path("libevdev/make-event-names.py"));
|
||||
run.addFileInput(evdev_dep.path("libevdev/libevdev.h"));
|
||||
const os = switch (target.result.os.tag) {
|
||||
.linux => "linux",
|
||||
.freebsd => "freebsd",
|
||||
else => @panic("Unsupported OS"),
|
||||
};
|
||||
run.addFileArg(evdev_dep.path(b.fmt("include/linux/{s}/input.h", .{os})));
|
||||
run.addFileArg(evdev_dep.path(b.fmt("include/linux/{s}/input-event-codes.h", .{os})));
|
||||
break :b out;
|
||||
};
|
||||
|
||||
lib.addIncludePath(event_names_h.dirname());
|
||||
lib.addIncludePath(evdev_dep.path("."));
|
||||
lib.addIncludePath(evdev_dep.path("include"));
|
||||
|
||||
const flags = &[_][]const u8{
|
||||
// c_std=gnu99
|
||||
"-std=gnu99",
|
||||
// warning_level=2
|
||||
"-Wall",
|
||||
"-Wextra",
|
||||
// cflags
|
||||
"-Wno-unused-parameter",
|
||||
"-fvisibility=hidden",
|
||||
"-Wmissing-prototypes",
|
||||
"-Wstrict-prototypes",
|
||||
// disable UB sanitizer, which is enabled by default by Zig
|
||||
"-fno-sanitize=undefined",
|
||||
"-D_FORTIFY_SOURCE=0", // really really bad (!!!) but too lazy to backport __poll_chk (sys/poll.h) to kindle glibc
|
||||
};
|
||||
lib.addCSourceFiles(.{
|
||||
.root = evdev_dep.path("."),
|
||||
.flags = flags,
|
||||
.files = &.{
|
||||
"libevdev/libevdev-uinput.c",
|
||||
"libevdev/libevdev.c",
|
||||
"libevdev/libevdev-names.c",
|
||||
},
|
||||
});
|
||||
|
||||
lib.installHeader(evdev_dep.path("libevdev/libevdev.h"), "libevdev/libevdev.h");
|
||||
lib.installHeader(evdev_dep.path("libevdev/libevdev-uinput.h"), "libevdev/libevdev-uinput.h");
|
||||
|
||||
return lib;
|
||||
}
|
40
libs/houdini.zig
Normal file
40
libs/houdini.zig
Normal file
|
@ -0,0 +1,40 @@
|
|||
const std = @import("std");
|
||||
|
||||
pub fn create(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.builtin.OptimizeMode) *std.Build.Step.Compile {
|
||||
const lib = b.addStaticLibrary(.{
|
||||
.name = "houdini",
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.linkLibC();
|
||||
|
||||
const houdini_dep = b.dependency("houdini", .{
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.addIncludePath(houdini_dep.path(""));
|
||||
lib.addCSourceFiles(.{
|
||||
.root = houdini_dep.path(""),
|
||||
.files = srcs,
|
||||
.flags = &.{},
|
||||
});
|
||||
|
||||
lib.installHeader(houdini_dep.path("houdini.h"), "houdini.h");
|
||||
lib.installHeader(houdini_dep.path("buffer.h"), "buffer.h");
|
||||
|
||||
return lib;
|
||||
}
|
||||
|
||||
const srcs = &.{
|
||||
"buffer.c",
|
||||
"houdini_href_e.c",
|
||||
"houdini_html_e.c",
|
||||
"houdini_html_u.c",
|
||||
"houdini_js_e.c",
|
||||
"houdini_js_u.c",
|
||||
"houdini_uri_e.c",
|
||||
"houdini_uri_u.c",
|
||||
"houdini_xml_e.c",
|
||||
};
|
140
libs/mbedtls.zig
Normal file
140
libs/mbedtls.zig
Normal file
|
@ -0,0 +1,140 @@
|
|||
const std = @import("std");
|
||||
|
||||
pub fn create(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.builtin.OptimizeMode) *std.Build.Step.Compile {
|
||||
const lib = b.addStaticLibrary(.{
|
||||
.name = "mbedtls",
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.linkLibC();
|
||||
|
||||
const mbedtls_dep = b.dependency("mbedtls", .{
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.addCSourceFiles(.{
|
||||
.root = mbedtls_dep.path(""),
|
||||
.files = srcs,
|
||||
.flags = &.{"-std=c99"},
|
||||
});
|
||||
|
||||
lib.addIncludePath(mbedtls_dep.path("include"));
|
||||
lib.addIncludePath(mbedtls_dep.path("library"));
|
||||
lib.installHeadersDirectory(mbedtls_dep.path("include/mbedtls"), "mbedtls", .{});
|
||||
lib.installHeadersDirectory(mbedtls_dep.path("include/psa"), "psa", .{});
|
||||
|
||||
return lib;
|
||||
}
|
||||
|
||||
const srcs = &.{
|
||||
"library/x509write_csr.c",
|
||||
"library/x509write_crt.c",
|
||||
"library/x509write.c",
|
||||
"library/x509_csr.c",
|
||||
"library/x509_crt.c",
|
||||
"library/x509_crl.c",
|
||||
"library/x509_create.c",
|
||||
"library/x509.c",
|
||||
"library/version_features.c",
|
||||
"library/version.c",
|
||||
"library/timing.c",
|
||||
"library/threading.c",
|
||||
"library/ssl_tls13_server.c",
|
||||
"library/ssl_tls13_keys.c",
|
||||
"library/ssl_tls13_generic.c",
|
||||
"library/ssl_tls13_client.c",
|
||||
"library/ssl_tls12_server.c",
|
||||
"library/ssl_tls12_client.c",
|
||||
"library/ssl_tls.c",
|
||||
"library/ssl_ticket.c",
|
||||
"library/ssl_msg.c",
|
||||
"library/ssl_debug_helpers_generated.c",
|
||||
"library/ssl_cookie.c",
|
||||
"library/ssl_client.c",
|
||||
"library/ssl_ciphersuites.c",
|
||||
"library/ssl_cache.c",
|
||||
"library/sha512.c",
|
||||
"library/sha3.c",
|
||||
"library/sha256.c",
|
||||
"library/sha1.c",
|
||||
"library/rsa_alt_helpers.c",
|
||||
"library/rsa.c",
|
||||
"library/ripemd160.c",
|
||||
"library/psa_util.c",
|
||||
"library/psa_its_file.c",
|
||||
"library/psa_crypto_storage.c",
|
||||
"library/psa_crypto_slot_management.c",
|
||||
"library/psa_crypto_se.c",
|
||||
"library/psa_crypto_rsa.c",
|
||||
"library/psa_crypto_pake.c",
|
||||
"library/psa_crypto_mac.c",
|
||||
"library/psa_crypto_hash.c",
|
||||
"library/psa_crypto_ffdh.c",
|
||||
"library/psa_crypto_ecp.c",
|
||||
"library/psa_crypto_driver_wrappers_no_static.c",
|
||||
"library/psa_crypto_client.c",
|
||||
"library/psa_crypto_cipher.c",
|
||||
"library/psa_crypto_aead.c",
|
||||
"library/psa_crypto.c",
|
||||
"library/poly1305.c",
|
||||
"library/platform_util.c",
|
||||
"library/platform.c",
|
||||
"library/pkwrite.c",
|
||||
"library/pkparse.c",
|
||||
"library/pkcs7.c",
|
||||
"library/pkcs5.c",
|
||||
"library/pkcs12.c",
|
||||
"library/pk_wrap.c",
|
||||
"library/pk_ecc.c",
|
||||
"library/pk.c",
|
||||
"library/pem.c",
|
||||
"library/padlock.c",
|
||||
"library/oid.c",
|
||||
"library/nist_kw.c",
|
||||
"library/net_sockets.c",
|
||||
"library/mps_trace.c",
|
||||
"library/mps_reader.c",
|
||||
"library/memory_buffer_alloc.c",
|
||||
"library/md5.c",
|
||||
"library/md.c",
|
||||
"library/lms.c",
|
||||
"library/lmots.c",
|
||||
"library/hmac_drbg.c",
|
||||
"library/hkdf.c",
|
||||
"library/gcm.c",
|
||||
"library/error.c",
|
||||
"library/entropy_poll.c",
|
||||
"library/entropy.c",
|
||||
"library/ecp_curves_new.c",
|
||||
"library/ecp_curves.c",
|
||||
"library/ecp.c",
|
||||
"library/ecjpake.c",
|
||||
"library/ecdsa.c",
|
||||
"library/ecdh.c",
|
||||
"library/dhm.c",
|
||||
"library/des.c",
|
||||
"library/debug.c",
|
||||
"library/ctr_drbg.c",
|
||||
"library/constant_time.c",
|
||||
"library/cmac.c",
|
||||
"library/cipher_wrap.c",
|
||||
"library/cipher.c",
|
||||
"library/chachapoly.c",
|
||||
"library/chacha20.c",
|
||||
"library/ccm.c",
|
||||
"library/camellia.c",
|
||||
"library/block_cipher.c",
|
||||
"library/bignum_mod_raw.c",
|
||||
"library/bignum_mod.c",
|
||||
"library/bignum_core.c",
|
||||
"library/bignum.c",
|
||||
"library/base64.c",
|
||||
"library/asn1write.c",
|
||||
"library/asn1parse.c",
|
||||
"library/aria.c",
|
||||
"library/aesni.c",
|
||||
"library/aesce.c",
|
||||
"library/aes.c",
|
||||
};
|
45
libs/zlib.zig
Normal file
45
libs/zlib.zig
Normal file
|
@ -0,0 +1,45 @@
|
|||
const std = @import("std");
|
||||
|
||||
pub fn create(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std.builtin.OptimizeMode) *std.Build.Step.Compile {
|
||||
const lib = b.addStaticLibrary(.{
|
||||
.name = "z",
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.linkLibC();
|
||||
|
||||
const zlib_dep = b.dependency("zlib", .{
|
||||
.target = target,
|
||||
.optimize = optimize,
|
||||
});
|
||||
|
||||
lib.addCSourceFiles(.{
|
||||
.root = zlib_dep.path(""),
|
||||
.files = srcs,
|
||||
.flags = &.{"-std=c89"},
|
||||
});
|
||||
|
||||
lib.installHeader(zlib_dep.path("zlib.h"), "zlib.h");
|
||||
lib.installHeader(zlib_dep.path("zconf.h"), "zconf.h");
|
||||
|
||||
return lib;
|
||||
}
|
||||
|
||||
const srcs = &.{
|
||||
"adler32.c",
|
||||
"compress.c",
|
||||
"crc32.c",
|
||||
"deflate.c",
|
||||
"gzclose.c",
|
||||
"gzlib.c",
|
||||
"gzread.c",
|
||||
"gzwrite.c",
|
||||
"infback.c",
|
||||
"inffast.c",
|
||||
"inflate.c",
|
||||
"inftrees.c",
|
||||
"trees.c",
|
||||
"uncompr.c",
|
||||
"zutil.c",
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue