1*4882a593SmuzhiyunSUMMARY = "Simple DirectMedia Layer" 2*4882a593SmuzhiyunDESCRIPTION = "Simple DirectMedia Layer is a cross-platform multimedia \ 3*4882a593Smuzhiyunlibrary designed to provide low level access to audio, keyboard, mouse, \ 4*4882a593Smuzhiyunjoystick, 3D hardware via OpenGL, and 2D video framebuffer." 5*4882a593SmuzhiyunHOMEPAGE = "http://www.libsdl.org" 6*4882a593SmuzhiyunBUGTRACKER = "http://bugzilla.libsdl.org/" 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunSECTION = "libs" 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunLICENSE = "Zlib & BSD-2-Clause" 11*4882a593SmuzhiyunLIC_FILES_CHKSUM = "\ 12*4882a593Smuzhiyun file://LICENSE.txt;md5=68a088513da90254b2fbe664f42af315 \ 13*4882a593Smuzhiyun file://src/hidapi/LICENSE.txt;md5=7c3949a631240cb6c31c50f3eb696077 \ 14*4882a593Smuzhiyun file://src/hidapi/LICENSE-bsd.txt;md5=b5fa085ce0926bb50d0621620a82361f \ 15*4882a593Smuzhiyun file://src/video/yuv2rgb/LICENSE;md5=79f8f3418d91531e05f0fc94ca67e071 \ 16*4882a593Smuzhiyun" 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun# arm-neon adds MIT license 19*4882a593SmuzhiyunLICENSE:append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', '& MIT', '', d)}" 20*4882a593SmuzhiyunLIC_FILES_CHKSUM:append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', 'file://src/video/arm/pixman-arm-neon-asm.h;md5=9a9cc1e51abbf1da58f4d9528ec9d49b;beginline=1;endline=24', '', d)}" 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunPROVIDES = "virtual/libsdl2" 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunSRC_URI = "http://www.libsdl.org/release/SDL2-${PV}.tar.gz \ 25*4882a593Smuzhiyun file://optional-libunwind-generic.patch \ 26*4882a593Smuzhiyun file://0001-sdlchecks.cmake-pass-cflags-to-the-appropriate-cmake.patch \ 27*4882a593Smuzhiyun file://0001-Fix-potential-memory-leak-in-GLES_CreateTextur.patch \ 28*4882a593Smuzhiyun " 29*4882a593SmuzhiyunSRC_URI:append:class-native = " file://0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch" 30*4882a593Smuzhiyun 31*4882a593SmuzhiyunS = "${WORKDIR}/SDL2-${PV}" 32*4882a593Smuzhiyun 33*4882a593SmuzhiyunSRC_URI[sha256sum] = "c56aba1d7b5b0e7e999e4a7698c70b63a3394ff9704b5f6e1c57e0c16f04dd06" 34*4882a593Smuzhiyun 35*4882a593Smuzhiyuninherit cmake lib_package binconfig-disabled pkgconfig 36*4882a593Smuzhiyun 37*4882a593SmuzhiyunBINCONFIG = "${bindir}/sdl2-config" 38*4882a593Smuzhiyun 39*4882a593SmuzhiyunCVE_PRODUCT = "simple_directmedia_layer sdl" 40*4882a593Smuzhiyun 41*4882a593SmuzhiyunEXTRA_OECMAKE = "-DSDL_OSS=OFF -DSDL_ESD=OFF -DSDL_ARTS=OFF \ 42*4882a593Smuzhiyun -DSDL_DISKAUDIO=OFF -DSDL_NAS=OFF -DSDL_ESD_SHARED=OFF \ 43*4882a593Smuzhiyun -DSDL_DUMMYVIDEO=OFF \ 44*4882a593Smuzhiyun -DSDL_RPI=OFF \ 45*4882a593Smuzhiyun -DSDL_PTHREADS=ON \ 46*4882a593Smuzhiyun -DSDL_RPATH=OFF \ 47*4882a593Smuzhiyun -DSDL_SNDIO=OFF \ 48*4882a593Smuzhiyun -DSDL_X11_XVM=OFF \ 49*4882a593Smuzhiyun -DSDL_X11_XCURSOR=OFF \ 50*4882a593Smuzhiyun -DSDL_X11_XINERAMA=OFF \ 51*4882a593Smuzhiyun -DSDL_X11_XDBE=OFF \ 52*4882a593Smuzhiyun -DSDL_X11_XFIXES=OFF \ 53*4882a593Smuzhiyun -DSDL_X11_XINPUT=OFF \ 54*4882a593Smuzhiyun -DSDL_X11_XRANDR=OFF \ 55*4882a593Smuzhiyun -DSDL_X11_XSCRNSAVER=OFF \ 56*4882a593Smuzhiyun -DSDL_X11_XSHAPE=OFF \ 57*4882a593Smuzhiyun" 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun# opengl packageconfig factored out to make it easy for distros 60*4882a593Smuzhiyun# and BSP layers to pick either (desktop) opengl, gles2, or no GL 61*4882a593SmuzhiyunPACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" 62*4882a593Smuzhiyun 63*4882a593SmuzhiyunPACKAGECONFIG:class-native = "x11 ${PACKAGECONFIG_GL}" 64*4882a593SmuzhiyunPACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${PACKAGECONFIG_GL}" 65*4882a593SmuzhiyunPACKAGECONFIG ??= " \ 66*4882a593Smuzhiyun ${PACKAGECONFIG_GL} \ 67*4882a593Smuzhiyun ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ 68*4882a593Smuzhiyun ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland gles2', '', d)} \ 69*4882a593Smuzhiyun ${@bb.utils.contains("TUNE_FEATURES", "neon","arm-neon","",d)} \ 70*4882a593Smuzhiyun" 71*4882a593SmuzhiyunPACKAGECONFIG[alsa] = "-DSDL_ALSA=ON,-DSDL_ALSA=OFF,alsa-lib," 72*4882a593SmuzhiyunPACKAGECONFIG[arm-neon] = "-DSDL_ARMNEON=ON,-DSDL_ARMNEON=OFF" 73*4882a593SmuzhiyunPACKAGECONFIG[directfb] = "-DSDL_DIRECTFB=ON,-DSDL_DIRECTFB=OFF,directfb,directfb" 74*4882a593SmuzhiyunPACKAGECONFIG[gles2] = "-DSDL_OPENGLES=ON,-DSDL_OPENGLES=OFF,virtual/libgles2" 75*4882a593SmuzhiyunPACKAGECONFIG[jack] = "-DSDL_JACK=ON,-DSDL_JACK=OFF,jack" 76*4882a593SmuzhiyunPACKAGECONFIG[kmsdrm] = "-DSDL_KMSDRM=ON,-DSDL_KMSDRM=OFF,libdrm virtual/libgbm" 77*4882a593SmuzhiyunPACKAGECONFIG[opengl] = "-DSDL_OPENGL=ON,-DSDL_OPENGL=OFF,virtual/egl" 78*4882a593SmuzhiyunPACKAGECONFIG[pulseaudio] = "-DSDL_PULSEAUDIO=ON,-DSDL_PULSEAUDIO=OFF,pulseaudio" 79*4882a593SmuzhiyunPACKAGECONFIG[wayland] = "-DSDL_WAYLAND=ON,-DSDL_WAYLAND=OFF,wayland-native wayland wayland-protocols libxkbcommon" 80*4882a593SmuzhiyunPACKAGECONFIG[x11] = "-DSDL_X11=ON,-DSDL_X11=OFF,virtual/libx11 libxext libxrandr libxrender" 81*4882a593Smuzhiyun 82*4882a593SmuzhiyunCFLAGS:append:class-native = " -DNO_SHARED_MEMORY" 83*4882a593Smuzhiyun 84*4882a593SmuzhiyunBBCLASSEXTEND = "native nativesdk" 85