Elppans

wine-staging-ivb_2.6-1_with_quartz

Feb 7th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.88 KB | None | 0 0
  1. # $Id$
  2. # Maintainer: Giancarlo Razzolini <grazzolini@gmail.com>
  3. # Contributor: Felix Yan <felixonmars@archlinux.org>
  4. # Contributor: Sven-Hendrik Haase <sh@lutzhaase.com>
  5. # Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
  6. # Contributor: Eduardo Romero <eduardo@archlinux.org>
  7. # Contributor: Giovanni Scafora <giovanni@archlinux.org>
  8.  
  9. pkgname=wine-staging-ivb
  10. pkgver=2.6
  11. pkgrel=1
  12.  
  13.  
  14. # Som quartz x86 1.9.15 mantido no pacote $pkgver pela compatibilidade
  15.  
  16. _pkgbasever=${pkgver/rc/-rc}
  17.  
  18. source=("${pkgname}-${pkgver}.tar.gz::https://github.com/wine-compholio/wine-patched/archive/staging-$_pkgbasever.tar.gz"
  19. 30-win32-aliases.conf
  20. patch-$pkgver-ivb.patch
  21. patch_temp_constants.patch)
  22. sha1sums=('d4659ab167ece2a296eb4712cb93d8aef402870e'
  23. '023a5c901c6a091c56e76b6a62d141d87cce9fdb'
  24. '792e97592b3a391b985c4990a966ee826bef53ab'
  25. '3f94ad1c60213eac5d7e68c959423d0f18ed0b5f')
  26. sha512sums=('05c9edb47c85778c1a44de80c1a477d4677a6cc11f6dfbf78201fb1c09145ab7aa309ca82c30061dabe7ae97430acde55e322a7fc368154a9f8c371c5b8dec2a'
  27. '6e54ece7ec7022b3c9d94ad64bdf1017338da16c618966e8baf398e6f18f80f7b0576edf1d1da47ed77b96d577e4cbb2bb0156b0b11c183a0accf22654b0a2bb'
  28. '3caf6fb7ad80f2b6cf6eba16570ac68a07cd8e5bed4af59c21e7509301014a76d27d714fd148f35cb04b085236469f08d7df4ab7e9d82173879c91dab2cbfb2b'
  29. '54e7927ea07137f2383734f65147ae18366a65a17c1970af06b13d5597f501ade3b2b435311bfae1759070895473f09382d75676e8b774c52ce540bc06cf5461')
  30.  
  31. pkgdesc="A compatibility layer for running Windows programs - Staging branch: indexed vertex blending - https://bugs.winehq.org/show_bug.cgi?id=39057 + CUSTOM"
  32. url="http://www.wine-staging.com"
  33. arch=(i686 x86_64)
  34. options=(staticlibs)
  35. license=(LGPL)
  36.  
  37. _depends=(
  38. attr lib32-attr
  39. fontconfig lib32-fontconfig
  40. lcms2 lib32-lcms2
  41. libxml2 lib32-libxml2
  42. libxcursor lib32-libxcursor
  43. libxrandr lib32-libxrandr
  44. libxdamage lib32-libxdamage
  45. libxi lib32-libxi
  46. gettext lib32-gettext
  47. freetype2 lib32-freetype2
  48. glu lib32-glu
  49. libsm lib32-libsm
  50. gcc-libs lib32-gcc-libs
  51. libpcap lib32-libpcap
  52. desktop-file-utils
  53. )
  54.  
  55. makedepends=(autoconf ncurses bison perl fontforge flex
  56. 'gcc>=4.5.0-2'
  57. giflib lib32-giflib
  58. libpng lib32-libpng
  59. gnutls lib32-gnutls
  60. libxinerama lib32-libxinerama
  61. libxcomposite lib32-libxcomposite
  62. libxmu lib32-libxmu
  63. libxxf86vm lib32-libxxf86vm
  64. libldap lib32-libldap
  65. mpg123 lib32-mpg123
  66. openal lib32-openal
  67. v4l-utils lib32-v4l-utils
  68. alsa-lib lib32-alsa-lib
  69. libxcomposite lib32-libxcomposite
  70. mesa lib32-mesa
  71. mesa-libgl lib32-mesa-libgl
  72. opencl-icd-loader lib32-opencl-icd-loader
  73. libxslt lib32-libxslt
  74. libpulse lib32-libpulse
  75. libva lib32-libva
  76. gtk3 lib32-gtk3
  77. gst-plugins-base-libs lib32-gst-plugins-base-libs
  78. samba
  79. opencl-headers
  80. )
  81.  
  82. optdepends=(
  83. giflib lib32-giflib
  84. libpng lib32-libpng
  85. libldap lib32-libldap
  86. gnutls lib32-gnutls
  87. mpg123 lib32-mpg123
  88. openal lib32-openal
  89. v4l-utils lib32-v4l-utils
  90. libpulse lib32-libpulse
  91. alsa-plugins lib32-alsa-plugins
  92. alsa-lib lib32-alsa-lib
  93. libjpeg-turbo lib32-libjpeg-turbo
  94. libxcomposite lib32-libxcomposite
  95. libxinerama lib32-libxinerama
  96. ncurses lib32-ncurses
  97. opencl-icd-loader lib32-opencl-icd-loader
  98. libxslt lib32-libxslt
  99. libva lib32-libva
  100. gtk3 lib32-gtk3
  101. gst-plugins-base-libs lib32-gst-plugins-base-libs
  102. vulkan-icd-loader lib32-vulkan-icd-loader
  103. cups
  104. samba dosbox
  105. )
  106.  
  107. if [[ $CARCH == i686 ]]; then
  108. # Strip lib32 etc. on i686
  109. _depends=(${_depends[@]/*32-*/})
  110. makedepends=(${makedepends[@]/*32-*/} ${_depends[@]})
  111. makedepends=(${makedepends[@]/*-multilib*/})
  112. optdepends=(${optdepends[@]/*32-*/})
  113. provides=("wine=$pkgver")
  114. conflicts=('wine' 'wine-ivb')
  115. else
  116. makedepends=(${makedepends[@]} ${_depends[@]})
  117. provides=("wine=$pkgver" "wine-wow64=$pkgver")
  118. conflicts=('wine' 'wine-ivb' 'wine-staging' 'wine-wow64')
  119. fi
  120.  
  121. prepare() {
  122. # Patch freetype >= 2.8.1
  123. # https://bugs.winehq.org/show_bug.cgi?id=43715
  124. #wget -c https://source.winehq.org/git/wine.git/patch/d82321006de92dcd74465c905121618a76eae76a -O $srcdir/patch_freetype.patch
  125. #wget -c https://source.winehq.org/patches/data/137429 -O $srcdir/patch_freetype2_1.patch
  126. #wget -c https://source.winehq.org/patches/data/137430 -O $srcdir/patch_freetype2_2.patch
  127.  
  128. # quartz x86 1.9.15
  129. wget -c https://github.com/elppans/wine-staging-1.9.15_IndexVertexBlending-1.9.11.i686/raw/master/lib/wine/libquartz.def -O $srcdir/libquartz.def
  130. wget -c https://github.com/elppans/wine-staging-1.9.15_IndexVertexBlending-1.9.11.i686/raw/master/lib/wine/quartz.dll.so -O $srcdir/quartz.dll.so
  131. wget -c https://github.com/elppans/wine-staging-1.9.15_IndexVertexBlending-1.9.11.i686/raw/master/lib/wine/fakedlls/quartz.dll -O $srcdir/quartz.dll
  132. #rm -rf $pkgname/dlls/quartz
  133. #mkdir -p $pkgname/dlls/quartz
  134. #git clone https://github.com/elppans/wine-quartz.git $pkgname/dlls/quartz
  135.  
  136.  
  137. # Allow ccache to work
  138. rm -rf $pkgname
  139. mv -fv wine-patched-staging-$_pkgbasever $pkgname
  140.  
  141. sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i $pkgname/configure*
  142.  
  143. # Get rid of old build dirs
  144. rm -rf $pkgname-{32,64}-build
  145. mkdir $pkgname-32-build
  146.  
  147. # Apply the ivb patches
  148. cd $pkgname
  149. patch -Np1 -i "$srcdir/patch-$pkgver-ivb.patch"
  150. #patch -Np1 -i "$srcdir/patch-1.9.11-ivb.patch"
  151. patch -Np1 -i "$srcdir/patch_temp_constants.patch"
  152. #patch -Np1 -i "$srcdir/patch_freetype.patch"
  153. #patch -Np1 -i "$srcdir/patch_freetype2_1.patch"
  154. #patch -Np1 -i "$srcdir/patch_freetype2_2.patch"
  155.  
  156. }
  157.  
  158. build() {
  159. cd "$srcdir"
  160.  
  161. if [[ $CARCH == x86_64 ]]; then
  162. msg2 "Building Wine-64..."
  163.  
  164. mkdir $pkgname-64-build
  165. cd "$srcdir/$pkgname-64-build"
  166. ../$pkgname/configure \
  167. --prefix=/usr \
  168. --libdir=/usr/lib \
  169. --enable-win64 \
  170. --with-x \
  171. --with-gstreamer \
  172. --without-xattr \
  173. --without-oss \
  174. --with-opencl \
  175. --without-hal \
  176. --without-sane \
  177. --without-capi \
  178. --without-curses \
  179. --without-xinerama \
  180. --without-xrandr \
  181. --without-xrender \
  182. --without-xshape \
  183. --without-xslt \
  184. --with-dbus \
  185. --with-mpg123 \
  186. --with-opengl \
  187. --with-xinput \
  188. --with-xinput2 \
  189. --with-xshm \
  190. --with-xxf86vm \
  191. --with-zlib \
  192. --with-va \
  193. --without-cups \
  194. --without-gettext \
  195. --without-gphoto \
  196. --without-netapi \
  197. --without-gettextpo \
  198. --without-gtk3 \
  199. --without-freetype
  200.  
  201. make
  202.  
  203. _wine32opts=(
  204. --libdir=/usr/lib32
  205. --with-wine64="$srcdir/$pkgname-64-build"
  206. )
  207.  
  208. export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
  209. fi
  210.  
  211. msg2 "Building Wine-32..."
  212. cd "$srcdir/$pkgname-32-build"
  213. ../$pkgname/configure \
  214. --prefix=/usr \
  215. --with-x \
  216. --with-gstreamer \
  217. --without-xattr \
  218. --without-oss \
  219. --with-opencl \
  220. --without-hal \
  221. --without-sane \
  222. --without-capi \
  223. --without-curses \
  224. --without-xinerama \
  225. --without-xrandr \
  226. --without-xrender \
  227. --without-xshape \
  228. --without-xslt \
  229. --with-dbus \
  230. --with-mpg123 \
  231. --with-opengl \
  232. --with-xinput \
  233. --with-xinput2 \
  234. --with-xshm \
  235. --with-xxf86vm \
  236. --with-zlib \
  237. --with-va \
  238. --without-cups \
  239. --without-gettext \
  240. --without-gphoto \
  241. --without-netapi \
  242. --without-gettextpo \
  243. --without-gtk3 \
  244. "${_wine32opts[@]}"
  245.  
  246. make
  247. }
  248.  
  249. package() {
  250. depends=(${_depends[@]})
  251.  
  252. msg2 "Packaging Wine-32..."
  253. cd "$srcdir/$pkgname-32-build"
  254.  
  255. if [[ $CARCH == i686 ]]; then
  256. make prefix="$pkgdir/usr" install
  257. else
  258. make prefix="$pkgdir/usr" \
  259. libdir="$pkgdir/usr/lib32" \
  260. dlldir="$pkgdir/usr/lib32/wine" install
  261.  
  262.  
  263. msg2 "Packaging Wine-64..."
  264. cd "$srcdir/$pkgname-64-build"
  265. make prefix="$pkgdir/usr" \
  266. libdir="$pkgdir/usr/lib" \
  267. dlldir="$pkgdir/usr/lib/wine" install
  268. fi
  269.  
  270. # Font aliasing settings for Win32 applications
  271. install -d "$pkgdir"/etc/fonts/conf.{avail,d}
  272. install -m644 "$srcdir/30-win32-aliases.conf" "$pkgdir/etc/fonts/conf.avail"
  273. ln -s ../conf.avail/30-win32-aliases.conf "$pkgdir/etc/fonts/conf.d/30-win32-aliases.conf"
  274.  
  275. # quartz x86 multilib 1.9.15 > $pkgver
  276. if [[ "$CARCH" != "i686" ]]; then
  277.  
  278. #mv "$pkgdir/usr/lib32/wine/quartz.dll.so" "$pkgdir/usr/lib32/wine/quartz.dll.so.$pkgver-$pkgrel"
  279. #mv "$pkgdir/usr/lib32/wine/libquartz.def" "$pkgdir/usr/lib32/wine/libquartz.def.$pkgver-$pkgrel"
  280. #mv "$pkgdir/usr/lib32/wine/fakedlls/quartz.dll" "$pkgdir/usr/lib32/wine/fakedlls/quartz.dll.$pkgver-$pkgrel"
  281. #rm -rf "$pkgdir/usr/lib32/wine/quartz.dll.so"
  282. #rm -rf "$pkgdir/usr/lib32/wine/libquartz.def"
  283. #rm -rf "$pkgdir/usr/lib32/wine/fakedlls/quartz.dll"
  284. install -m644 "$srcdir/quartz.dll.so" "$pkgdir/usr/lib32/wine"
  285. install -m644 "$srcdir/libquartz.def" "$pkgdir/usr/lib32/wine"
  286. install -m644 "$srcdir/quartz.dll" "$pkgdir/usr/lib32/wine/fakedlls"
  287. #chmod 0644 "$pkgdir/usr/lib32/wine/quartz.dll.so"
  288. #chmod 0644 "$pkgdir/usr/lib32/wine/libquartz.def"
  289. #chmod 0644 "$pkgdir/usr/lib32/wine/fakedlls/quartz.dll"
  290. fi
  291. }
  292.  
  293. # vim:set ts=8 sts=2 sw=2 et:
Add Comment
Please, Sign In to add comment