SDL2.spec.in
author Ryan C. Gordon <icculus@icculus.org>
Thu, 28 May 2015 01:54:52 -0400
changeset 9671 0e1f57b051f4
parent 9361 17a2821b451c
child 9707 5ca9f59ab336
permissions -rw-r--r--
Windows GetBasePath should use GetModuleFileNameExW() and check for overflows.

Apparently you might get strange paths from GetModuleFileName(), such as
short path names or UNC filenames, so this avoids that problem. Since you have
to tapdance with linking different libraries and defining macros depending on
what Windows you plan to target, we dynamically load the API we need, which
works on all versions of Windows (on Win7, it'll load a compatibility wrapper
for the newer API location).

What a mess.

This also now does the right thing if there isn't enough space to store the
path, looping with a larger allocated buffer each try.

Fixes Bugzilla #2435.
slouken@0
     1
Summary: Simple DirectMedia Layer
slouken@6255
     2
Name: SDL2
slouken@1361
     3
Version: @SDL_VERSION@
icculus@9361
     4
Release: 2
icculus@1133
     5
Source: http://www.libsdl.org/release/%{name}-%{version}.tar.gz
slouken@0
     6
URL: http://www.libsdl.org/
slouken@5537
     7
License: zlib
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@6265
    12
Provides: libSDL2-2.0.so.0
icculus@1133
    13
%endif
slouken@0
    14
slouken@1844
    15
%define __defattr %defattr(-,root,root)
slouken@1844
    16
%define __soext so
slouken@1844
    17
slouken@0
    18
%description
slouken@0
    19
This is the Simple DirectMedia Layer, a generic API that provides low
slouken@0
    20
level access to audio, keyboard, mouse, and display framebuffer across
slouken@0
    21
multiple platforms.
slouken@0
    22
slouken@0
    23
%package devel
slouken@0
    24
Summary: Libraries, includes and more to develop SDL applications.
slouken@0
    25
Group: Development/Libraries
icculus@1133
    26
Requires: %{name} = %{version}
slouken@0
    27
slouken@0
    28
%description devel
slouken@0
    29
This is the Simple DirectMedia Layer, a generic API that provides low
slouken@0
    30
level access to audio, keyboard, mouse, and display framebuffer across
slouken@0
    31
multiple platforms.
slouken@0
    32
slouken@0
    33
This is the libraries, include files and other resources you can use
slouken@0
    34
to develop SDL applications.
slouken@0
    35
slouken@0
    36
slouken@0
    37
%prep
slouken@0
    38
%setup -q 
slouken@0
    39
slouken@0
    40
%build
icculus@1133
    41
%ifos linux
slouken@5047
    42
CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --disable-video-directfb
icculus@1133
    43
%else
slouken@1588
    44
%configure
icculus@1133
    45
%endif
slouken@0
    46
make
slouken@0
    47
slouken@0
    48
%install
slouken@0
    49
rm -rf $RPM_BUILD_ROOT
icculus@1133
    50
%ifos linux
slouken@1390
    51
make install prefix=$RPM_BUILD_ROOT%{prefix} \
slouken@1390
    52
             bindir=$RPM_BUILD_ROOT%{_bindir} \
slouken@1390
    53
             libdir=$RPM_BUILD_ROOT%{_libdir} \
slouken@1390
    54
             includedir=$RPM_BUILD_ROOT%{_includedir} \
slouken@1390
    55
             datadir=$RPM_BUILD_ROOT%{_datadir} \
slouken@1390
    56
             mandir=$RPM_BUILD_ROOT%{_mandir}
icculus@1133
    57
%else
icculus@1133
    58
%makeinstall
icculus@1133
    59
%endif
slouken@0
    60
slouken@0
    61
%clean
slouken@0
    62
rm -rf $RPM_BUILD_ROOT
slouken@0
    63
slouken@0
    64
%files
icculus@1133
    65
%{__defattr}
icculus@9361
    66
%doc README*.txt COPYING.txt CREDITS.txt BUGS.txt
icculus@1133
    67
%{_libdir}/lib*.%{__soext}.*
slouken@0
    68
slouken@0
    69
%files devel
slouken@1844
    70
%{__defattr}
icculus@9361
    71
%doc README*.txt COPYING.txt CREDITS.txt BUGS.txt WhatsNew.txt
icculus@1133
    72
%{_bindir}/*-config
icculus@1133
    73
%{_libdir}/lib*.a
icculus@1133
    74
%{_libdir}/lib*.la
icculus@1133
    75
%{_libdir}/lib*.%{__soext}
slouken@6265
    76
%{_includedir}/*/*.h
slouken@6265
    77
%{_libdir}/pkgconfig/*
slouken@1361
    78
%{_datadir}/aclocal/*
slouken@0
    79
slouken@0
    80
%changelog
icculus@9361
    81
* Sun Dec 07 2014 Simone Contini <s.contini@oltrelinux.com>
icculus@9361
    82
- Fixed changelog date issue and docs filenames
icculus@9361
    83
slouken@6265
    84
* Sun Jan 22 2012 Sam Lantinga <slouken@libsdl.org>
slouken@6265
    85
- Updated for SDL 2.0
slouken@6265
    86
slouken@1844
    87
* Tue May 16 2006 Sam Lantinga <slouken@libsdl.org>
slouken@1844
    88
- Removed support for Darwin, due to build problems on ps2linux
slouken@1844
    89
icculus@9361
    90
* Sat Jan 03 2004 Anders Bjorklund <afb@algonet.se>
icculus@1133
    91
- Added support for Darwin, updated spec file
icculus@1133
    92
slouken@0
    93
* Wed Jan 19 2000 Sam Lantinga <slouken@libsdl.org>
slouken@0
    94
- Re-integrated spec file into SDL distribution
slouken@0
    95
- 'name' and 'version' come from configure 
slouken@0
    96
- Some of the documentation is devel specific
slouken@0
    97
- Removed SMP support from %build - it doesn't work with libtool anyway
slouken@0
    98
slouken@0
    99
* Tue Jan 18 2000 Hakan Tandogan <hakan@iconsult.com>
slouken@0
   100
- Hacked Mandrake sdl spec to build 1.1
slouken@0
   101
slouken@0
   102
* Sun Dec 19 1999 John Buswell <johnb@mandrakesoft.com>
slouken@0
   103
- Build Release
slouken@0
   104
slouken@0
   105
* Sat Dec 18 1999 John Buswell <johnb@mandrakesoft.com>
slouken@0
   106
- Add symlink for libSDL-1.0.so.0 required by sdlbomber
slouken@0
   107
- Added docs
slouken@0
   108
slouken@0
   109
* Thu Dec 09 1999 Lenny Cartier <lenny@mandrakesoft.com>
slouken@0
   110
- v 1.0.0
slouken@0
   111
slouken@0
   112
* Mon Nov  1 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
slouken@0
   113
- First spec file for Mandrake distribution.
slouken@0
   114
slouken@0
   115
# end of file