SHA256
1
0
forked from pool/wine
wine/wine.spec
Marcus Meissner b9c955ef41 - Updated to 1.9.4 development snapshot
- New version of the Mono engine, with 64-bit support.
  - Beginnings of the WineD3D command stream.
  - Support for effect states in Direct3DX.
  - Drag & drop improvements.
  - Various bug fixes.
- updated winetricks

OBS-URL: https://build.opensuse.org/package/show/Emulators/wine?expand=0&rev=345
2016-03-04 16:44:40 +00:00

333 lines
10 KiB
RPMSpec

#
# spec file for package wine
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: wine
BuildRequires: Mesa-devel
BuildRequires: alsa-devel
BuildRequires: autoconf
BuildRequires: bison
BuildRequires: capi4linux-devel
BuildRequires: cups-devel
BuildRequires: dbus-1-devel
BuildRequires: desktop-file-utils
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: fontconfig-devel
BuildRequires: freeglut-devel
BuildRequires: freetype2-devel
BuildRequires: giflib-devel
BuildRequires: gstreamer-plugins-base-devel
BuildRequires: libgnutls-devel
BuildRequires: libgphoto2-devel
BuildRequires: libgsm-devel
BuildRequires: libjpeg-devel
BuildRequires: liblcms2-devel
BuildRequires: libpcap-devel
BuildRequires: libpng-devel
BuildRequires: libpulse-devel
BuildRequires: libtiff-devel
BuildRequires: libv4l-devel
BuildRequires: libxml2-devel
BuildRequires: libxslt-devel
BuildRequires: ncurses-devel
BuildRequires: openal-soft-devel
BuildRequires: openldap2-devel
BuildRequires: openssl-devel
BuildRequires: pkgconfig
BuildRequires: sane-backends-devel
BuildRequires: update-desktop-files
BuildRequires: valgrind-devel
BuildRequires: xorg-x11-devel
%define realver 1.9.5
Version: 1.9.5
Release: 0
Summary: An MS Windows Emulator
License: LGPL-2.1+
Group: System/Emulators/PC
Url: http://www.winehq.org/
Source0: http://downloads.sourceforge.net/project/wine/Source/wine-%{realver}.tar.bz2
Source41: wine.keyring
Source42: http://downloads.sourceforge.net/project/wine/Source//%{name}-%{realver}.tar.bz2.sign
Source1: https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
Source11: https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks.1
Source2: http://kegel.com/wine/wisotool
Source3: README.SUSE
Source4: wine.desktop
Source6: wine-msi.desktop
Source5: ubuntuwine.tar.bz2
Source7: baselibs.conf
# SUSE specific patches
# - currently none, but add them here
#Patch0: susepatches.patch
Recommends: wine-gecko >= 2.24
Recommends: wine-mp3
# not packaged in distro...
Recommends: wine-mono
Recommends: dosbox
Recommends: alsa-plugins
Recommends: alsa-plugins-pulse
Requires: samba-winbind
Conflicts: wine-gecko < 1.3
%ifarch x86_64
Requires: %{name}-32bit = %{version}
%endif
# for winetricks:
Requires: cabextract
Requires: unzip
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExclusiveArch: %{ix86} x86_64 ppc %arm
%description
An MS Windows emulator, consisting of both runtime and source
compatibility functions. You can run your MS executables with it and
write your Windows programs under Linux and link against the WINE
libraries.
It is not necessary to have a Windows installation to run WINE.
Refer to %{_datadir}/doc/packages/wine/README.SUSE. There is more
documentation available in that directory. Read 'man wine' for further
information.
You can invoke wine by entering 'wine program.exe'. Configure it by
running 'winecfg'.
%package devel
Summary: files for wine development
Group: System/Emulators/PC
%description devel
This RPM contains the header files and development tools for the WINE
libraries.
%prep
%setup -q -n wine-%{realver}
#%patch0 -p1
#
cp %{S:3} .
#
%build
cat VERSION
%ifarch %ix86
# e.g. Steam and other copy protections hate removed %ebp.
export RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fomit-frame-pointer//'`
%endif
# keep just for susepatches with configure changes
#autoconf
#autoheader -I include
CFLAGS="$RPM_OPT_FLAGS" \
%configure \
--with-x \
%ifarch x86_64
--enable-win64 \
%endif
--verbose
grep "have_x=yes" config.log || exit 1
# generate baselibs.conf
%ifarch %ix86
echo "# autogenerated in .spec file" >%SOURCE7
echo "%name" >> %SOURCE7
echo " +^/usr/bin/wine\$" >> %SOURCE7
echo " +^/usr/bin/wine-preloader\$" >> %SOURCE7
echo " +^/usr/lib/wine/fakedlls" >> %SOURCE7
grep SONAME_ config.log
grep SONAME_ config.log|grep -v 'so"'|sed -e 's/^.*\(".*"\).*$/ requires \1/;'|sort -u >>%SOURCE7
echo " recommends \"alsa-plugins-pulse-32bit\"" >> %SOURCE7
echo " recommends \"alsa-plugins-32bit\"" >> %SOURCE7
%if 0%{?suse_version} >= 1310
echo " requires \"p11-kit-32bit\"" >> %SOURCE7
%endif
echo "%name-devel" >> %SOURCE7
echo " +^/usr/lib/wine/.*def" >> %SOURCE7
cat %SOURCE7
%endif
make %{?_smp_mflags} all
%install
make install DESTDIR=%{buildroot}
# install desktop file
install -d %{buildroot}%{_datadir}/applications/
%suse_update_desktop_file %{SOURCE4} System Emulator
install -m 0644 %SOURCE4 %{buildroot}%{_datadir}/applications/
install -m 0644 %SOURCE6 %{buildroot}%{_datadir}/applications/
install -m 0755 %SOURCE1 %{buildroot}%{_bindir}/
install -m 0755 %SOURCE2 %{buildroot}%{_bindir}/
mv %{buildroot}/%{_mandir}/de.UTF-8 %{buildroot}/%{_mandir}/de
mv %{buildroot}/%{_mandir}/fr.UTF-8 %{buildroot}/%{_mandir}/fr
%ifnarch x86_64
mv %{buildroot}/%{_mandir}/pl.UTF-8 %{buildroot}/%{_mandir}/pl
%endif
install -c %{SOURCE11} %{buildroot}/%{_mandir}/man1/
tar xjf %{SOURCE5}
# Copied from Ubuntu Wine out of debian.diff
# https://launchpad.net/~ubuntu-wine/+archive/ppa/+packages
# taken on 1.2rc2 time.
cd ubuntuwine
install -d %{buildroot}%{_sysconfdir}/xdg/menus/applications-merged
install -c -m 644 wine.menu %{buildroot}%{_sysconfdir}/xdg/menus/applications-merged
# Install application-specific desktop files
install -d %{buildroot}%{_datadir}/applications
install -c -m 644 *.desktop %{buildroot}%{_datadir}/applications/
sed -i "/X-SuSE-translate/d" %{buildroot}%{_datadir}/applications/*.desktop
install -d %{buildroot}%{_datadir}/desktop-directories/
install -c -m 644 *.directory %{buildroot}%{_datadir}/desktop-directories/
# Correct desktop files' categories
%suse_update_desktop_file -n -r wine-notepad Utility TextEditor
%suse_update_desktop_file -n -r wine-uninstaller System Emulator
%suse_update_desktop_file -n -r wine-winecfg System Emulator
%suse_update_desktop_file -n -r wine-regedit System Emulator
%suse_update_desktop_file -n -r wine-winehelp System Emulator
%suse_update_desktop_file -n -r wine-msi System Emulator
%suse_update_desktop_file -n -r wine-browsedrive System Emulator
%suse_update_desktop_file -n -r wine-winefile System FileManager
%suse_update_desktop_file -n -r wine-winemine Game BoardGame
# Install icons
install -d %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/
install -c -m 644 *.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/
cd ..
# find the implicit dependencies
%define winedir %_builddir/%name-%realver/
cat >%winedir/my-find-requires.sh <<EOF
#!/bin/bash
%{__find_requires}
%ifarch x86_64
grep SONAME_ %winedir/config.log|grep -v 'so"'|sed -e 's/^.*"\(.*\)".*$/\1()(64bit)/;'|sort -u
%else
grep SONAME_ %winedir/config.log|grep -v 'so"'|sed -e 's/^.*"\(.*\)".*$/\1/;'|sort -u
%endif
EOF
chmod 755 %winedir/my-find-requires.sh
%define _use_internal_dependency_generator 0
%define __find_requires %winedir/my-find-requires.sh
# breaks btrfs installation, see bnc#723402
# %fdupes -s %{buildroot}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root)
%doc ANNOUNCE AUTHORS LICENSE LICENSE.OLD README*
%{_bindir}/function_grep.pl
%{_bindir}/msiexec
%{_bindir}/notepad
%{_bindir}/regedit
%{_bindir}/regsvr32
%{_bindir}/wineboot
%{_bindir}/winecfg
%{_bindir}/wineconsole
%{_bindir}/winedbg
%{_bindir}/winefile
%{_bindir}/winemine
%{_bindir}/winepath
%{_bindir}/wineserver
%{_bindir}/winetricks
%{_bindir}/wisotool
%{_datadir}/wine
%{_datadir}/applications/wine.desktop
%ifnarch x86_64
%doc %{_mandir}/man1/wine.1*
%endif
%doc %{_mandir}/man1/winedbg.1*
%doc %{_mandir}/man1/wineserver.1*
%ifnarch x86_64
%doc %dir %doc %{_mandir}/pl
%doc %dir %doc %{_mandir}/pl/man1
%doc %{_mandir}/*/man1/wine.1*
%endif
%doc %{_mandir}/*/man1/wineserver.1*
%doc %{_mandir}/man1/msiexec.1.*
%doc %{_mandir}/man1/notepad.1.*
%doc %{_mandir}/man1/regedit.1.*
%doc %{_mandir}/man1/regsvr32.1.*
%doc %{_mandir}/man1/wineboot.1.*
%doc %{_mandir}/man1/winebuild.1.*
%doc %{_mandir}/man1/winecfg.1.*
%doc %{_mandir}/man1/wineconsole.1.*
%doc %{_mandir}/man1/winecpp.1.*
%doc %{_mandir}/man1/winefile.1.*
%doc %{_mandir}/man1/winemine.1.*
%doc %{_mandir}/man1/winetricks.1.*
%doc %{_mandir}/man1/winepath.1.*
%dir %{_sysconfdir}/xdg/menus/
%dir %{_sysconfdir}/xdg/menus/applications-merged
%config %{_sysconfdir}/xdg/menus/applications-merged/*.menu
%{_datadir}/applications/*.desktop
%dir %{_datadir}/desktop-directories/
%{_datadir}/desktop-directories/*.directory
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/scalable
%dir %{_datadir}/icons/hicolor/scalable/apps
%{_datadir}/icons/hicolor/scalable/apps/*.svg
%ifarch %ix86
%{_bindir}/wine
%{_bindir}/wine-preloader
%endif
%ifarch ppc %arm
%{_bindir}/wine
%endif
%ifarch x86_64
%{_bindir}/wine64
%{_bindir}/wine64-preloader
%endif
%{_libdir}/wine/*.so
%{_libdir}/lib*.so.*
%dir %{_libdir}/wine
%dir %{_libdir}/wine/fakedlls
%{_libdir}/wine/fakedlls/*
%files devel
%defattr(-,root,root)
%{_includedir}/wine
%{_bindir}/widl
%{_bindir}/winebuild
%{_bindir}/winecpp
%{_bindir}/winedump
%{_bindir}/wineg++
%{_bindir}/winegcc
%{_bindir}/winemaker
%{_bindir}/wmc
%{_bindir}/wrc
%{_libdir}/wine/*.def
%{_libdir}/wine/*.a
%{_libdir}/lib*.so
%doc %{_mandir}/man1/winemaker.1*
%doc %{_mandir}/*/man1/winemaker.1*
%doc %{_mandir}/man1/widl.1*
%doc %{_mandir}/man1/winedump.1*
%doc %{_mandir}/man1/wineg++.1*
%doc %{_mandir}/man1/winegcc.1*
%doc %{_mandir}/man1/wmc.1*
%doc %{_mandir}/man1/wrc.1*
# %{_datadir}/aclocal/wine.m4
%changelog