Hello community,

here is the log from the commit of package SDL for openSUSE:Factory checked in 
at 2013-04-17 09:25:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/SDL (Old)
 and      /work/SRC/openSUSE:Factory/.SDL.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "SDL", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/SDL/SDL.changes  2012-09-20 15:50:21.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.SDL.new/SDL.changes     2013-04-17 
09:25:38.000000000 +0200
@@ -1,0 +2,16 @@
+Thu Jan  3 00:31:43 UTC 2013 - [email protected]
+
+- USe OS byteswapping macros that are optimized for all platforms
+ directly by GCC.
+
+ - DO not use dlopen to load libraries that otherwise can be linked
+  at build-time, this is a _very_ bad idea, starting with the fact
+  that rpm dependencies do not take account of dlopen and will 
+  break profiling/debugging etc..
+
+- SDL-devel now has strict requires, so it will only pull what
+ it really requires, as it no longer requires metapackages, it is
+ very likely that some packages dont the chain will fail to build
+ those must be fixed in the respective spec files (not here)
+
+-------------------------------------------------------------------

New:
----
  SDL_sdl_endian.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ SDL.spec ++++++
--- /var/tmp/diff_new_pack.jq4Gpq/_old  2013-04-17 09:25:52.000000000 +0200
+++ /var/tmp/diff_new_pack.jq4Gpq/_new  2013-04-17 09:25:52.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package SDL
 #
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -51,6 +51,7 @@
 Source2:        baselibs.conf
 # PATCH-FIX-OPENSUSE SDL-1.2.13-x11-keytounicode.patch
 Patch0:         SDL-1.2.13-x11-keytounicode.patch
+Patch1:         SDL_sdl_endian.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 %description
@@ -84,17 +85,13 @@
 %ifarch ppc64
 Obsoletes:      SDL-devel-64bit
 %endif
-Requires:       Mesa-devel
-Requires:       alsa-devel
 Requires:       gcc
 Requires:       libSDL-1_2-0 = %{version}
-Requires:       libstdc++-devel
 Requires:       pkgconfig
-Requires:       xorg-x11-devel
+Requires:       pkgconfig(gl)
 Requires:       pkgconfig(glu)
-%if 0%{?aalib} == 1
-Requires:       aalib-devel
-%endif
+Requires:       pkgconfig(x11)
+Requires:       pkgconfig(xproto)
 
 %description -n libSDL-devel
 This package contains files needed for development with the SDL
@@ -103,7 +100,7 @@
 %prep
 %setup -q
 %patch0
-
+%patch1
 # remove the file to provide sufficient evidence that we are
 # not using this file during the build [bnc#508111]
 rm -f src/joystick/darwin/10.3.9-FIX/IOHIDLib.h
@@ -115,6 +112,10 @@
     --with-pic \
     --disable-rpath \
     --disable-alsa-shared \
+    --disable-x11-shared \
+    --disable-pulseaudio-shared \
+    --disable-esd-shared \
+    --disable-osmesa-shared \
 %if 0%{?aalib}
     --enable-video-aalib \
 %endif
@@ -124,8 +125,11 @@
 
 %install
 %make_install
+
 rm -f %{buildroot}%{_libdir}/*.la
 
+sed -i -e '/^Libs.private/d' %{buildroot}%{_libdir}/pkgconfig/sdl.pc
+
 %post -n libSDL-1_2-0 -p /sbin/ldconfig
 
 %postun -n libSDL-1_2-0 -p /sbin/ldconfig

++++++ SDL_sdl_endian.patch ++++++
--- include/SDL_endian.h.orig
+++ include/SDL_endian.h
@@ -37,12 +37,11 @@
 #define SDL_LIL_ENDIAN 1234
 #define SDL_BIG_ENDIAN 4321
 /*@}*/
+#include <byteswap.h>
+#include <endian.h>
 
 #ifndef SDL_BYTEORDER  /* Not defined in SDL_config.h? */
-#ifdef __linux__
-#include <endian.h>
 #define SDL_BYTEORDER  __BYTE_ORDER
-#else /* __linux __ */
 #if defined(__hppa__) || \
     defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
     (defined(__MIPS__) && defined(__MISPEB__)) || \
@@ -52,7 +51,6 @@
 #else
 #define SDL_BYTEORDER  SDL_LIL_ENDIAN
 #endif
-#endif /* __linux __ */
 #endif /* !SDL_BYTEORDER */
 
 
@@ -62,6 +60,13 @@
 extern "C" {
 #endif
 
+
+static __inline__ Uint16 SDL_Swap16(Uint16 x) { return bswap_16(x); }
+
+static __inline__ Uint32 SDL_Swap32(Uint32 x) { return bswap_32(x); }
+
+static __inline__ Uint64 SDL_Swap64(Uint64 x) { return bswap_64(x); }
+
 /**
  *  @name SDL_Swap Functions
  *  Use inline functions for compilers that support them, and static
@@ -70,139 +75,18 @@ extern "C" {
  *  header should only be included in files that actually use them.
  */
 /*@{*/
-#if defined(__GNUC__) && defined(__i386__) && \
-   !(__GNUC__ == 2 && __GNUC_MINOR__ <= 95 /* broken gcc version */)
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
-{
-       __asm__("xchgb %b0,%h0" : "=q" (x) :  "0" (x));
-       return x;
-}
-#elif defined(__GNUC__) && defined(__x86_64__)
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
-{
-       __asm__("xchgb %b0,%h0" : "=Q" (x) :  "0" (x));
-       return x;
-}
-#elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
-{
-       int result;
-
-       __asm__("rlwimi %0,%2,8,16,23" : "=&r" (result) : "0" (x >> 8), "r" 
(x));
-       return (Uint16)result;
-}
-#elif defined(__GNUC__) && (defined(__m68k__) && !defined(__mcoldfire__))
-static __inline__ Uint16 SDL_Swap16(Uint16 x)
-{
-       __asm__("rorw #8,%0" : "=d" (x) :  "0" (x) : "cc");
-       return x;
-}
-#else
-static __inline__ Uint16 SDL_Swap16(Uint16 x) {
-       return SDL_static_cast(Uint16, ((x<<8)|(x>>8)));
-}
-#endif
-
-#if defined(__GNUC__) && defined(__i386__) && \
-   !(__GNUC__ == 2 && __GNUC_MINOR__ <= 95 /* broken gcc version */)
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
-{
-       __asm__("bswap %0" : "=r" (x) : "0" (x));
-       return x;
-}
-#elif defined(__GNUC__) && defined(__x86_64__)
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
-{
-       __asm__("bswapl %0" : "=r" (x) : "0" (x));
-       return x;
-}
-#elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
-{
-       Uint32 result;
-
-       __asm__("rlwimi %0,%2,24,16,23" : "=&r" (result) : "0" (x>>24), "r" 
(x));
-       __asm__("rlwimi %0,%2,8,8,15"   : "=&r" (result) : "0" (result),    "r" 
(x));
-       __asm__("rlwimi %0,%2,24,0,7"   : "=&r" (result) : "0" (result),    "r" 
(x));
-       return result;
-}
-#elif defined(__GNUC__) && (defined(__m68k__) && !defined(__mcoldfire__))
-static __inline__ Uint32 SDL_Swap32(Uint32 x)
-{
-       __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0" : "=d" (x) :  "0" (x) : 
"cc");
-       return x;
-}
-#else
-static __inline__ Uint32 SDL_Swap32(Uint32 x) {
-       return SDL_static_cast(Uint32, 
((x<<24)|((x<<8)&0x00FF0000)|((x>>8)&0x0000FF00)|(x>>24)));
-}
-#endif
-
-#ifdef SDL_HAS_64BIT_TYPE
-#if defined(__GNUC__) && defined(__i386__) && \
-   !(__GNUC__ == 2 && __GNUC_MINOR__ <= 95 /* broken gcc version */)
-static __inline__ Uint64 SDL_Swap64(Uint64 x)
-{
-       union { 
-               struct { Uint32 a,b; } s;
-               Uint64 u;
-       } v;
-       v.u = x;
-       __asm__("bswapl %0 ; bswapl %1 ; xchgl %0,%1" 
-               : "=r" (v.s.a), "=r" (v.s.b) 
-               : "0" (v.s.a), "1" (v.s.b)); 
-       return v.u;
-}
-#elif defined(__GNUC__) && defined(__x86_64__)
-static __inline__ Uint64 SDL_Swap64(Uint64 x)
-{
-       __asm__("bswapq %0" : "=r" (x) : "0" (x));
-       return x;
-}
-#else
-static __inline__ Uint64 SDL_Swap64(Uint64 x)
-{
-       Uint32 hi, lo;
-
-       /* Separate into high and low 32-bit values and swap them */
-       lo = SDL_static_cast(Uint32, x & 0xFFFFFFFF);
-       x >>= 32;
-       hi = SDL_static_cast(Uint32, x & 0xFFFFFFFF);
-       x = SDL_Swap32(lo);
-       x <<= 32;
-       x |= SDL_Swap32(hi);
-       return (x);
-}
-#endif
-#else
-/* This is mainly to keep compilers from complaining in SDL code.
- * If there is no real 64-bit datatype, then compilers will complain about
- * the fake 64-bit datatype that SDL provides when it compiles user code.
- */
-#define SDL_Swap64(X)  (X)
-#endif /* SDL_HAS_64BIT_TYPE */
-/*@}*/
 
 /**
  *  @name SDL_SwapLE and SDL_SwapBE Functions
  *  Byteswap item from the specified endianness to the native endianness
  */
 /*@{*/
-#if SDL_BYTEORDER == SDL_LIL_ENDIAN
-#define SDL_SwapLE16(X)        (X)
-#define SDL_SwapLE32(X)        (X)
-#define SDL_SwapLE64(X)        (X)
-#define SDL_SwapBE16(X)        SDL_Swap16(X)
-#define SDL_SwapBE32(X)        SDL_Swap32(X)
-#define SDL_SwapBE64(X)        SDL_Swap64(X)
-#else
-#define SDL_SwapLE16(X)        SDL_Swap16(X)
-#define SDL_SwapLE32(X)        SDL_Swap32(X)
-#define SDL_SwapLE64(X)        SDL_Swap64(X)
-#define SDL_SwapBE16(X)        (X)
-#define SDL_SwapBE32(X)        (X)
-#define SDL_SwapBE64(X)        (X)
-#endif
+#define SDL_SwapLE16(X)        htole16(X)
+#define SDL_SwapLE32(X)        htole32(X)
+#define SDL_SwapLE64(X)        htole64(X)
+#define SDL_SwapBE16(X)        htobe16(X)
+#define SDL_SwapBE32(X)        htobe32(X)
+#define SDL_SwapBE64(X)        htobe64(X)
 /*@}*/
 
 /* Ends C function definitions when using C++ */
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to