externals: Link SDL2 statically. (#6461)

This commit is contained in:
Steveice10 2023-05-09 20:08:25 -07:00 committed by GitHub
parent d8e74a9ff4
commit 71a9981430
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 61 additions and 75 deletions

View file

@ -4,7 +4,6 @@ if(MSVC)
endif()
add_library(usb STATIC EXCLUDE_FROM_ALL
libusb/libusb/core.c
libusb/libusb/core.c
libusb/libusb/descriptor.c
libusb/libusb/hotplug.c
@ -42,10 +41,9 @@ endif()
if(WIN32 OR CYGWIN)
target_sources(usb PRIVATE
libusb/libusb/os/threads_windows.c
libusb/libusb/os/windows_winusb.c
libusb/libusb/os/windows_usbdk.c
libusb/libusb/os/windows_nt_common.c
libusb/libusb/os/windows_common.c
)
set(OS_WINDOWS TRUE)
elseif(APPLE)
@ -54,10 +52,12 @@ elseif(APPLE)
)
find_library(COREFOUNDATION_LIBRARY CoreFoundation)
find_library(IOKIT_LIBRARY IOKit)
find_library(SECURITY_LIBRARY Security)
find_library(OBJC_LIBRARY objc)
target_link_libraries(usb PRIVATE
${COREFOUNDATION_LIBRARY}
${IOKIT_LIBRARY}
${SECURITY_LIBRARY}
${OBJC_LIBRARY}
)
set(OS_DARWIN TRUE)
@ -102,7 +102,7 @@ endif()
if(UNIX)
target_sources(usb PRIVATE
libusb/libusb/os/poll_posix.c
libusb/libusb/os/events_posix.c
libusb/libusb/os/threads_posix.c
)
find_package(Threads REQUIRED)
@ -112,12 +112,13 @@ if(UNIX)
if(CMAKE_THREAD_LIBS_INIT)
target_link_libraries(usb PRIVATE "${CMAKE_THREAD_LIBS_INIT}")
endif()
set(THREADS_POSIX TRUE)
set(PLATFORM_POSIX TRUE)
elseif(WIN32)
target_sources(usb PRIVATE
libusb/libusb/os/poll_windows.c
libusb/libusb/os/events_windows.c
libusb/libusb/os/threads_windows.c
)
set(PLATFORM_WINDOWS TRUE)
endif()
include(CheckFunctionExists)
@ -127,7 +128,8 @@ check_include_files(asm/types.h HAVE_ASM_TYPES_H)
check_function_exists(gettimeofday HAVE_GETTIMEOFDAY)
check_include_files(linux/filter.h HAVE_LINUX_FILTER_H)
check_include_files(linux/netlink.h HAVE_LINUX_NETLINK_H)
check_include_files(poll.h HAVE_POLL_H)
check_function_exists(eventfd HAVE_EVENTFD)
check_function_exists(timerfd_create HAVE_TIMERFD)
check_include_files(signal.h HAVE_SIGNAL_H)
check_include_files(strings.h HAVE_STRINGS_H)
check_type_size("struct timespec" STRUCT_TIMESPEC)
@ -136,17 +138,6 @@ check_include_files(syslog.h HAVE_SYSLOG_H)
check_include_files(sys/socket.h HAVE_SYS_SOCKET_H)
check_include_files(sys/time.h HAVE_SYS_TIME_H)
check_include_files(sys/types.h HAVE_SYS_TYPES_H)
set(CMAKE_EXTRA_INCLUDE_FILES poll.h)
check_type_size("nfds_t" nfds_t)
unset(CMAKE_EXTRA_INCLUDE_FILES)
if(HAVE_NFDS_T)
set(POLL_NFDS_TYPE "nfds_t")
else()
set(POLL_NFDS_TYPE "unsigned int")
endif()
check_include_files(sys/timerfd.h USBI_TIMERFD_AVAILABLE)
check_function_exists(clock_gettime HAVE_CLOCK_GETTIME)
configure_file(config.h.in config.h)

View file

@ -26,8 +26,11 @@
/* Define to 1 if you have the <linux/netlink.h> header file. */
#cmakedefine HAVE_LINUX_NETLINK_H 1
/* Define to 1 if you have the <poll.h> header file. */
#cmakedefine HAVE_POLL_H 1
/* Define to 1 if you have eventfd support. */
#cmakedefine HAVE_EVENTFD 1
/* Define to 1 if you have timerfd support. */
#cmakedefine HAVE_TIMERFD 1
/* Define to 1 if you have the <signal.h> header file. */
#cmakedefine HAVE_SIGNAL_H 1
@ -53,6 +56,9 @@
/* Define to 1 if you have the <sys/types.h> header file. */
#cmakedefine HAVE_SYS_TYPES_H 1
/* Define to 1 if you have the 'clock_gettime' function. */
#cmakedefine HAVE_CLOCK_GETTIME 1
/* Darwin backend */
#cmakedefine OS_DARWIN 1
@ -68,14 +74,11 @@
/* Windows backend */
#cmakedefine OS_WINDOWS 1
/* type of second poll() argument */
#define POLL_NFDS_TYPE @POLL_NFDS_TYPE@
/* Use POSIX Platform */
#cmakedefine PLATFORM_POSIX
/* Use POSIX Threads */
#cmakedefine THREADS_POSIX
/* timerfd headers available */
#cmakedefine USBI_TIMERFD_AVAILABLE 1
/* Use Windows Platform */
#cmakedefine PLATFORM_WINDOWS
/* Enable output to system log */
#define USE_SYSTEM_LOGGING_FACILITY 1

@ -1 +1 @@
Subproject commit e782eeb2514266f6738e242cdcb18e3ae1ed06fa
Subproject commit 54350bd83fbcc9555abc57988d6fd73f3b9e9ff8

View file

@ -1,33 +1,6 @@
# Disable building the stuff we don't need.
set(SDL_DISKAUDIO OFF CACHE BOOL "")
set(SDL_OPENGL ON CACHE BOOL "")
set(SDL_OPENGLES ON CACHE BOOL "")
set(SDL_OSS OFF CACHE BOOL "")
set(SDL_ALSA OFF CACHE BOOL "")
set(SDL_JACK OFF CACHE BOOL "")
set(SDL_ESD OFF CACHE BOOL "")
set(SDL_PIPEWIRE OFF CACHE BOOL "")
set(SDL_PULSEAUDIO OFF CACHE BOOL "")
set(SDL_ARTS OFF CACHE BOOL "")
set(SDL_NAS OFF CACHE BOOL "")
set(SDL_SNDIO OFF CACHE BOOL "")
set(SDL_FUSIONSOUND OFF CACHE BOOL "")
set(SDL_LIBSAMPLERATE OFF CACHE BOOL "")
set(SDL_X11 OFF CACHE BOOL "")
set(SDL_WAYLAND OFF CACHE BOOL "")
set(SDL_RPI OFF CACHE BOOL "")
set(SDL_COCOA ON CACHE BOOL "")
set(SDL_DIRECTX OFF CACHE BOOL "")
set(SDL_WASAPI OFF CACHE BOOL "")
set(SDL_RENDER_D3D OFF CACHE BOOL "")
set(SDL_RENDER_METAL OFF CACHE BOOL "")
set(SDL_VIVANTE OFF CACHE BOOL "")
set(SDL_VULKAN OFF CACHE BOOL "")
set(SDL_METAL OFF CACHE BOOL "")
set(SDL_KMSDRM OFF CACHE BOOL "")
set(SDL_OFFSCREEN OFF CACHE BOOL "")
set(SDL_SHARED ON CACHE BOOL "")
set(SDL_STATIC OFF CACHE BOOL "")
# Configure static library build
set(SDL_SHARED OFF CACHE BOOL "")
set(SDL_STATIC ON CACHE BOOL "")
# Subsystems
set(SDL_ATOMIC ON CACHE BOOL "")

2
externals/sdl2/SDL vendored

@ -1 +1 @@
Subproject commit a1d1946dcba6509f0679f507b57e7b228d32e6f8
Subproject commit ac13ca9ab691e13e8eebe9684740ddcb0d716203