diff --git a/devel/sdl20/Makefile b/devel/sdl20/Makefile index 2fc297e69921..5b06670fdb3a 100644 --- a/devel/sdl20/Makefile +++ b/devel/sdl20/Makefile @@ -1,147 +1,148 @@ PORTNAME= sdl2 DISTVERSION= 2.30.5 +PORTREVISION= 1 CATEGORIES= devel MASTER_SITES= https://github.com/libsdl-org/SDL/releases/download/release-${DISTVERSION}/ \ https://www.libsdl.org/release/ DISTNAME= SDL2-${PORTVERSION} MAINTAINER= amdmi3@FreeBSD.org COMMENT= Cross-platform multimedia development API WWW= https://www.libsdl.org/ \ https://github.com/libsdl-org/SDL LICENSE= ZLIB LICENSE_FILE= ${WRKSRC}/LICENSE.txt USES= cmake iconv pkgconfig CMAKE_OFF= SDL_ARTS \ SDL_CCACHE \ SDL_ESD \ SDL_LIBICONV \ SDL_RPATH CMAKE_ON= CMAKE_DISABLE_FIND_PACKAGE_Git USE_LDCONFIG= yes PORTSCOUT= limitw:1,even OPTIONS_DEFINE= CSD DBUS FCITX IBUS JOYSTICK HIDAPI \ SAMPLERATE UDEV OPTIONS_GROUP= AUDIO VIDEO OPTIONS_GROUP_AUDIO= ALSA JACK NAS OSS PIPEWIRE PULSEAUDIO SNDIO OPTIONS_GROUP_VIDEO= KMSDRM OPENGL OPENGLES VULKAN \ WAYLAND X11 OPTIONS_DEFAULT= JOYSTICK OSS KMSDRM OPENGL \ OPENGLES VULKAN WAYLAND X11 OPTIONS_DEFINE_powerpc= ALTIVEC OPTIONS_DEFINE_powerpc64= ALTIVEC OPTIONS_DEFAULT_powerpc= ALTIVEC OPTIONS_DEFAULT_powerpc64= ALTIVEC AUDIO_DESC= Audio drivers VIDEO_DESC= Video drivers CSD_DESC= Client-side decorations for Wayland via libdecor FCITX_DESC= fcitx support HIDAPI_DESC= Use HIDAPI for low level joystick drivers IBUS_DESC= IBus support JOYSTICK_DESC= Joystick and haptic support KMSDRM_DESC= KMSDRM display support OPENGLES_DESC= OpenGL ES rendering support UDEV_DESC= Use udev for input device detection VULKAN_DESC= Vulkan rendering support ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CMAKE_BOOL= SDL_ALSA ALSA_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_ALSA ALTIVEC_CMAKE_BOOL= SDL_ALTIVEC CSD_LIB_DEPENDS= libdecor-0.so:x11-toolkits/libdecor CSD_CMAKE_BOOL= SDL_WAYLAND_LIBDECOR CSD_IMPLIES= WAYLAND DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus DBUS_CMAKE_BOOL= SDL_DBUS FCITX_LIB_DEPENDS= libfcitx-config.so:chinese/fcitx FCITX_IMPLIES= DBUS HIDAPI_CMAKE_BOOL= SDL_HIDAPI HIDAPI_IMPLIES= JOYSTICK IBUS_LIB_DEPENDS= libibus-1.0.so:textproc/ibus IBUS_CMAKE_BOOL= SDL_IBUS IBUS_IMPLIES= DBUS JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CMAKE_BOOL= SDL_JACK JOYSTICK_BUILD_DEPENDS= ${LOCALBASE}/include/linux/input.h:devel/evdev-proto JOYSTICK_LIB_DEPENDS= libinotify.so:devel/libinotify JOYSTICK_CMAKE_BOOL= SDL_HIDAPI_JOYSTICK SDL_HIDAPI_LIBUSB SDL_VIRTUAL_JOYSTICK KMSDRM_USES= gl KMSDRM_USE= GL=gbm KMSDRM_CMAKE_BOOL= SDL_KMSDRM NAS_LIB_DEPENDS= libaudio.so:audio/nas NAS_CMAKE_BOOL= SDL_NAS OPENGL_USES= gl OPENGL_USE= GL=opengl OPENGL_CMAKE_BOOL= SDL_OPENGL OPENGLES_USES= gl OPENGLES_USE= GL=egl,glesv1,glesv2 OPENGLES_CMAKE_BOOL= SDL_OPENGLES OSS_CMAKE_BOOL= SDL_OSS PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_CMAKE_BOOL= SDL_PIPEWIRE PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= SDL_PULSEAUDIO SAMPLERATE_LIB_DEPENDS= libsamplerate.so:audio/libsamplerate SAMPLERATE_CMAKE_BOOL= SDL_LIBSAMPLERATE SAMPLERATE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_SampleRate SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_CMAKE_BOOL= SDL_SNDIO UDEV_BUILD_DEPENDS= ${LOCALBASE}/include/linux/input.h:devel/evdev-proto UDEV_LIB_DEPENDS= libudev.so:devel/libudev-devd UDEV_CMAKE_BOOL= SDL_LIBUDEV VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader VULKAN_CMAKE_BOOL= SDL_VULKAN WAYLAND_BUILD_DEPENDS= wayland-protocols>0:graphics/wayland-protocols \ ${LOCALBASE}/include/linux/input.h:devel/evdev-proto WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon WAYLAND_CMAKE_BOOL= SDL_WAYLAND WAYLAND_IMPLIES= OPENGLES X11_USES= xorg X11_USE= XORG=x11,xcursor,xext,xi,xfixes,xrandr,xscrnsaver X11_CMAKE_BOOL= SDL_X11 .include # Similar to x11/pixman .if ${ARCH} == "armv6" || ${ARCH} == "armv7" BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils CFLAGS+= -B${LOCALBASE}/bin -no-integrated-as .endif post-patch: @${REINPLACE_CMD} -e '/dep_option.*Dynamically load/ s|ON|OFF|' \ ${WRKSRC}/CMakeLists.txt post-patch-FCITX-off: @${REINPLACE_CMD} -e 's|HAVE_FCITX TRUE|HAVE_FCITX FALSE|g' \ ${WRKSRC}/CMakeLists.txt .include diff --git a/devel/sdl20/files/patch-CMakeLists.txt b/devel/sdl20/files/patch-CMakeLists.txt index 10acb6ef7a95..beba94b6dd42 100644 --- a/devel/sdl20/files/patch-CMakeLists.txt +++ b/devel/sdl20/files/patch-CMakeLists.txt @@ -1,49 +1,58 @@ ---- CMakeLists.txt.orig 2024-05-01 16:16:27 UTC +--- CMakeLists.txt.orig 2024-07-03 21:23:37 UTC +++ CMakeLists.txt @@ -404,12 +404,12 @@ set_option(SDL_ASSEMBLY "Enable assembly ro option_string(SDL_ASSERTIONS "Enable internal sanity checks (auto/disabled/release/enabled/paranoid)" "auto") #set_option(SDL_DEPENDENCY_TRACKING "Use gcc -MMD -MT dependency tracking" ON) set_option(SDL_ASSEMBLY "Enable assembly routines" ${OPT_DEF_ASM}) -dep_option(SDL_SSEMATH "Allow GCC to use SSE floating point math" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) +#[[ dep_option(SDL_SSEMATH "Allow GCC to use SSE floating point math" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) dep_option(SDL_SSE "Use SSE assembly routines" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) dep_option(SDL_SSE2 "Use SSE2 assembly routines" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) dep_option(SDL_SSE3 "Use SSE3 assembly routines" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) dep_option(SDL_MMX "Use MMX assembly routines" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) -dep_option(SDL_3DNOW "Use 3Dnow! MMX assembly routines" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) +dep_option(SDL_3DNOW "Use 3Dnow! MMX assembly routines" ON "SDL_ASSEMBLY;SDL_CPU_X86 OR SDL_CPU_X64" OFF) ]] dep_option(SDL_ALTIVEC "Use Altivec assembly routines" ON "SDL_ASSEMBLY" OFF) dep_option(SDL_ARMSIMD "Use SIMD assembly blitters on ARM" OFF "SDL_ASSEMBLY;SDL_CPU_ARM32" OFF) dep_option(SDL_ARMNEON "Use NEON assembly blitters on ARM" OFF "SDL_ASSEMBLY;SDL_CPU_ARM32" OFF) +@@ -474,7 +474,7 @@ set_option(SDL_VIVANTE "Use Vivante EGL vi + set_option(SDL_RENDER_D3D "Enable the Direct3D render driver" ${WINDOWS}) + set_option(SDL_RENDER_METAL "Enable the Metal render driver" ${APPLE}) + set_option(SDL_VIVANTE "Use Vivante EGL video driver" ${UNIX_SYS}) +-dep_option(SDL_VULKAN "Enable Vulkan support" ON "ANDROID OR APPLE OR LINUX OR WINDOWS" OFF) ++dep_option(SDL_VULKAN "Enable Vulkan support" ON "ANDROID OR APPLE OR LINUX OR WINDOWS OR FREEBSD" OFF) + set_option(SDL_METAL "Enable Metal support" ${APPLE}) + set_option(SDL_KMSDRM "Use KMS DRM video driver" ${UNIX_SYS}) + dep_option(SDL_KMSDRM_SHARED "Dynamically load KMS DRM support" ON "SDL_KMSDRM" OFF) @@ -758,7 +758,7 @@ if(SDL_ASSEMBLY) # TODO: Those all seem to be quite GCC specific - needs to be # reworked for better compiler support set(HAVE_ASSEMBLY TRUE) - if(SDL_MMX) +#[[ if(SDL_MMX) set(CMAKE_REQUIRED_FLAGS "-mmmx") check_c_source_compiles(" #ifdef __MINGW32__ @@ -881,7 +881,7 @@ if(SDL_ASSEMBLY) endif() else() set(HAVE_SSEMATH TRUE) - endif() + endif() ]] check_include_file("immintrin.h" HAVE_IMMINTRIN_H) @@ -1613,9 +1613,11 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU endif() if(FREEBSD AND NOT HAVE_INOTIFY) - pkg_search_module(INOTIFY libinotify) - if(INOTIFY_FOUND) + pkg_search_module(PC_INOTIFY libinotify) + if(PC_INOTIFY_FOUND) set(HAVE_INOTIFY 1) + find_path(INOTIFY_INCLUDE_DIRS NAMES sys/inotify.h REQUIRED HINTS ${PC_INOTIFY_INCLUDE_DIRS}) + find_library(INOTIFY_LIBRARIES NAMES inotify REQUIRED HINTS ${PC_INOTIFY_LIBRARY_DIRS}) target_include_directories(sdl-build-options INTERFACE "${INOTIFY_INCLUDE_DIRS}") list(APPEND EXTRA_LIBS ${INOTIFY_LIBRARIES}) endif()