SDL.spec.in
author Ryan C. Gordon <icculus@icculus.org>
Thu, 08 Sep 2005 06:16:14 +0000
changeset 1133 609c060fd2a2
parent 1008 5fb02068b648
child 1361 19418e4422cb
permissions -rw-r--r--
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:


To: SDL Developers <sdl@libsdl.org>
From: =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb@algonet.se>
Date: Mon, 30 May 2005 23:29:04 +0200
Subject: [SDL] Mac OS X Video Drivers [patch]

I've updated/added the Carbon and X11 video drivers
to the Mac OS X port of SDL 1.2 (the CVS version),
and made the Cocoa driver and runtime *optional*.

The default is still Cocoa, and the "Quartz" driver.
But you can now also use "toolbox" for Carbon, and
"x11" for running with Apple's (or other) X11 server:

export SDL_VIDEODRIVER=x11
export SDL_VIDEO_GL_DRIVER=/usr/X11R6/lib/libGL.dylib

It also checks if the frameworks are available, by a:
#include <Carbon/Carbon.h> or #import <Cocoa/Cocoa.h>
(this should make it configure on plain Darwin as well?)


Here are the new configure targets:
--enable-video-cocoa use Cocoa/Quartz video driver default=yes
--enable-video-carbon use Carbon/QuickDraw video driver default=yes
--enable-video-x11 use X11 video driver default=no

./configure --enable-video-cocoa --enable-video-carbon
--enable-video-x11 \
--x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib

The Carbon version is just an updated version of the old
SDL driver for Mac OS 9, and could probably be improved...
(but it does work, including the Carbon version of SDLmain)

If you disable cocoa, you can run with -framework Carbon only,
and the C version of SDL_main.c. And if you disable carbon too,
you can still use the X11 version which doesn't require SDLmain.

I updated the DrawSprocket version, but did not include it.
(no blitters or VRAM GWorlds etc. available on OS X anyway)
Besides for Mac OS 9, I don't think there's any use for it ?

And note that any performance on Mac OS X equals OpenGL anyway...
You can get "fair" software SDL results on captured CG displays,
but for decent frame rates you need to be using GL for rendering.


Finally, here is the patch itself:
http://www.algonet.se/~afb/SDL-12CVS-macvideo.patch

--anders

PS. It says "video", but as usual it applies to mouse/keyboard too.


------


To: A list for developers using the SDL library <sdl@libsdl.org>
From: =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb@algonet.se>
Date: Sun, 4 Sep 2005 10:02:15 +0200
Subject: [SDL] Updated Mac patch

Updated the previous Mac patch to disable Carbon by default.
Also "fixed" the SDL.spec again, so that it builds on Darwin.

http://www.algonet.se/~afb/SDL-1.2.9-mac.patch
Also applied fine to SDL12 CVS, when I tried it.
slouken@0
     1
Summary: Simple DirectMedia Layer
icculus@1133
     2
Name: @PACKAGE@
icculus@1133
     3
Version: @VERSION@
icculus@1133
     4
Release: 1
icculus@1133
     5
Source: http://www.libsdl.org/release/%{name}-%{version}.tar.gz
slouken@0
     6
URL: http://www.libsdl.org/
icculus@1133
     7
License: LGPL
slouken@0
     8
Group: System Environment/Libraries
icculus@1133
     9
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
slouken@0
    10
Prefix: %{_prefix}
icculus@1133
    11
%ifos linux
slouken@328
    12
Provides: libSDL-1.1.so.0
icculus@1133
    13
%endif
slouken@0
    14
slouken@0
    15
%description
slouken@0
    16
This is the Simple DirectMedia Layer, a generic API that provides low
slouken@0
    17
level access to audio, keyboard, mouse, and display framebuffer across
slouken@0
    18
multiple platforms.
slouken@0
    19
slouken@0
    20
%package devel
slouken@0
    21
Summary: Libraries, includes and more to develop SDL applications.
slouken@0
    22
Group: Development/Libraries
icculus@1133
    23
Requires: %{name} = %{version}
slouken@0
    24
slouken@0
    25
%description devel
slouken@0
    26
This is the Simple DirectMedia Layer, a generic API that provides low
slouken@0
    27
level access to audio, keyboard, mouse, and display framebuffer across
slouken@0
    28
multiple platforms.
slouken@0
    29
slouken@0
    30
This is the libraries, include files and other resources you can use
slouken@0
    31
to develop SDL applications.
slouken@0
    32
slouken@0
    33
slouken@0
    34
%prep
slouken@0
    35
%setup -q 
slouken@0
    36
slouken@0
    37
%build
icculus@1133
    38
%ifos linux
slouken@1008
    39
CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --disable-video-svga --disable-video-ggi --disable-video-aalib --disable-debug --enable-dlopen --enable-esd-shared --enable-arts-shared
icculus@1133
    40
%else
icculus@1133
    41
%configure --disable-debug --enable-dlopen
icculus@1133
    42
%endif
slouken@0
    43
make
slouken@0
    44
slouken@0
    45
%install
slouken@0
    46
rm -rf $RPM_BUILD_ROOT
icculus@1133
    47
%ifos linux
slouken@0
    48
make install prefix=$RPM_BUILD_ROOT/%{prefix}
slouken@84
    49
ln -s libSDL-1.2.so.0 $RPM_BUILD_ROOT/%{prefix}/lib/libSDL-1.1.so.0
icculus@1133
    50
%else
icculus@1133
    51
%makeinstall
icculus@1133
    52
%endif
slouken@0
    53
slouken@0
    54
%clean
slouken@0
    55
rm -rf $RPM_BUILD_ROOT
slouken@0
    56
icculus@1133
    57
%ifnos darwin
icculus@1133
    58
%define __defattr %defattr(-,root,root)
icculus@1133
    59
%define __soext so
icculus@1133
    60
%else
icculus@1133
    61
%define __defattr %defattr(-,root,wheel)
icculus@1133
    62
%define __soext dylib
icculus@1133
    63
%endif
icculus@1133
    64
slouken@0
    65
%files
icculus@1133
    66
%{__defattr}
slouken@0
    67
%doc README-SDL.txt COPYING CREDITS BUGS
icculus@1133
    68
%ifnos darwin
icculus@1133
    69
%{_libdir}/lib*.%{__soext}.*
icculus@1133
    70
%else
icculus@1133
    71
%{_libdir}/lib*.*.%{__soext}
icculus@1133
    72
%endif
slouken@0
    73
slouken@0
    74
%files devel
slouken@0
    75
%defattr(-,root,root)
slouken@0
    76
%doc README README-SDL.txt COPYING CREDITS BUGS WhatsNew docs.html
slouken@0
    77
%doc docs/index.html docs/html
icculus@1133
    78
%{_bindir}/*-config
icculus@1133
    79
%{_libdir}/lib*.a
icculus@1133
    80
%{_libdir}/lib*.la
icculus@1133
    81
%{_libdir}/lib*.%{__soext}
icculus@1133
    82
%dir %{_includedir}/SDL
icculus@1133
    83
%{_includedir}/SDL/*.h
icculus@1133
    84
%{_mandir}/man3/*
icculus@1133
    85
%{_datadir}/aclocal/*
slouken@0
    86
slouken@0
    87
%changelog
icculus@1133
    88
* Mon Jan 03 2004 Anders Bjorklund <afb@algonet.se>
icculus@1133
    89
- Added support for Darwin, updated spec file
icculus@1133
    90
slouken@0
    91
* Wed Jan 19 2000 Sam Lantinga <slouken@libsdl.org>
slouken@0
    92
- Re-integrated spec file into SDL distribution
slouken@0
    93
- 'name' and 'version' come from configure 
slouken@0
    94
- Some of the documentation is devel specific
slouken@0
    95
- Removed SMP support from %build - it doesn't work with libtool anyway
slouken@0
    96
slouken@0
    97
* Tue Jan 18 2000 Hakan Tandogan <hakan@iconsult.com>
slouken@0
    98
- Hacked Mandrake sdl spec to build 1.1
slouken@0
    99
slouken@0
   100
* Sun Dec 19 1999 John Buswell <johnb@mandrakesoft.com>
slouken@0
   101
- Build Release
slouken@0
   102
slouken@0
   103
* Sat Dec 18 1999 John Buswell <johnb@mandrakesoft.com>
slouken@0
   104
- Add symlink for libSDL-1.0.so.0 required by sdlbomber
slouken@0
   105
- Added docs
slouken@0
   106
slouken@0
   107
* Thu Dec 09 1999 Lenny Cartier <lenny@mandrakesoft.com>
slouken@0
   108
- v 1.0.0
slouken@0
   109
slouken@0
   110
* Mon Nov  1 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
slouken@0
   111
- First spec file for Mandrake distribution.
slouken@0
   112
slouken@0
   113
# end of file