comparison multimedia/sfml/sfml.sh @ 1117:af9e47ff06b8

graphics/sfml: initial import, closes #1602
author David Demelier <markand@malikania.fr>
date Mon, 23 Sep 2019 12:15:16 +0200
parents
children 6710613b88b9
comparison
equal deleted inserted replaced
1116:3a40c84f9253 1117:af9e47ff06b8
1 #!/bin/sh
2 #
3 # Copyright (c) 2019 David Demelier <markand@malikania.fr>
4 #
5 # Permission to use, copy, modify, and/or distribute this software for any
6 # purpose with or without fee is hereby granted, provided that the above
7 # copyright notice and this permission notice appear in all copies.
8 #
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 #
17
18 PKGNAME=sfml
19 PKGVERSION=2.5.1
20 PKGREVISION=1
21 PKGLICENSE="ZLIB"
22 PKGSUMMARY="Simple and Fast Multimedia Library"
23 PKGDOWNLOAD="https://www.sfml-dev.org/files/SFML-$PKGVERSION-sources.zip"
24 PKGDEPENDS="cmake:build unzip:build"
25 PKGOPTIONS="WINDOW GRAPHICS AUDIO NETWORK"
26
27 : ${CC:=clang}
28 : ${CFLAGS:=-O2}
29 : ${CXX:=clang++}
30 : ${CXXFLAGS:=-O2}
31 : ${AUDIO:=yes}
32 : ${GRAPHICS:=yes}
33 : ${NETWORK:=yes}
34 : ${WINDOW:=yes}
35
36 if [ "$AUDIO" = "yes" ]; then
37 PKGDEPENDS="flac libogg libvorbis openal-soft $PKGDEPENDS"
38 with_audio="-DSFML_BUILD_AUDIO=On"
39 else
40 with_audio="-DSFML_BUILD_AUDIO=Off"
41 fi
42
43 # Both Window and Graphics component require mesa
44 if [ "$GRAPHICS" = "yes" ] || [ "$WINDOW" = "yes" ]; then
45 PKGDEPENDS="mesa libx11 libxrandr $PKGDEPENDS"
46 fi
47
48 if [ "$GRAPHICS" = "yes" ]; then
49 PKGDEPENDS="freetype libjpeg-turbo libpng $PKGDEPENDS"
50 with_graphics="-DSFML_BUILD_GRAPHICS=On"
51 else
52 with_graphics="-DSFML_BUILD_GRAPHICS=Off"
53 fi
54
55 if [ "$NETWORK" = "yes" ]; then
56 with_network="-DSFML_BUILD_NETWORK=On"
57 else
58 with_network="-DSFML_BUILD_NETWORK=Off"
59 fi
60
61 if [ "$WINDOW" = "yes" ]; then
62 PKGDEPENDS="eudev $PKGDEPENDS"
63 with_window="-DSFML_BUILD_WINDOW=On"
64 else
65 with_window="-DSFML_BUILD_WINDOW=Off"
66 fi
67
68 build()
69 {
70 rm -rf SFML-$PKGVERSION
71 unzip SFML-$PKGVERSION-sources.zip
72 cd SFML-$PKGVERSION
73
74 mkdir build && cd build
75 cmake .. \
76 -DBUILD_SHARED_LIBS=On \
77 -DCMAKE_BUILD_TYPE=Release \
78 -DCMAKE_CXX_COMPILER="$CXX" \
79 -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
80 -DCMAKE_C_COMPILER="$CC" \
81 -DCMAKE_C_FLAGS="$CFLAGS" \
82 -DCMAKE_INSTALL_PREFIX= \
83 -DSFML_USE_SYSTEM_DEPS=On \
84 -DSFML_PKGCONFIG_INSTALL_PREFIX=/lib/pkgconfig \
85 $with_audio \
86 $with_graphics \
87 $with_network \
88 $with_window
89 make VERBOSE=1
90 make install DESTDIR=$DESTDIR
91 cd ..
92
93 cd ..
94 rm -rf SFML-$PKGVERSION
95 }