summaryrefslogtreecommitdiff
path: root/libre/blender-libre/PKGBUILD
blob: fffb0926b67224596486084a20376ee4b0e42935 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
# Maintainer: Márcio Silva <coadde@lavabit.com>

_pkgname=blender
epoch=10
_pkgver=2.69
pkgrel=3
_jpgver=1.5
_pyver=3.3

_spn=false
[[ $_spn == true ]] && {
  _spnname=-spacenav
  _spndesc=' (with spacenav support)'
}

pkgname=$_pkgname$_spnname-libre
pkgver=$_pkgver
pkgdesc='Fully integrated 3D graphics creation suite, without nonfree cuda support'$_spndesc
arch=(
  mips64el
  x86_64
  i686
)
license=GPL
url=http://www.$_pkgname.org
depends=(
  desktop-file-utils
  ffmpeg
  fftw
  freetype2
  hicolor-icon-theme
  jack
  #jemalloc
  libpng
  libtiff
  openal
  openexr-libre
  openimageio
  'opencollada=20131031'
  opencolorio
  openshadinglanguage
  shared-mime-info
  xdg-utils
)
[[ $_spn == true ]] && depends+=(libspnav)
optdepends=(
  'bullet: for Rigid Bodies and Physics Simulation'
  'xcftools: for import GIMP images to scene (pcr repo)'
  'povray-libre: for optional renderer with POV-Ray'
  'blender-addon-luxrender: for optional renderer and exporter with LuxRender'
  'blender-addon-mitsuba: for optional renderer and exporter with Mitsuba (pcr repo)'
  'blender-addon-ogre: for export to Ogre3D formats (pcr repo)'
  'blender-addon-yafaray: for optional renderer with YafaRay (pcr repo)'
)
makedepends=(
  boost
  cmake
  mesa
)
provides=($_pkgname)
[[ $_spn == true ]] && provides+=("$_pkgname-libre=$epoch:$pkgver")
conflicts=($_pkgname)
[[ $_spn == true ]] && conflicts+=($_pkgname-libre)
replaces=$_pkgname
options=(!strip)
install=$_pkgname.install
source=http://download.$_pkgname.org/source/$_pkgname-$pkgver.tar.gz
sha512sums=f4de1f5a0a7868ee509b57ef65962a6c2af4c2bc7328db6ebe7b8e05f771c06efea92977f7a64433e8383382a33dbd73cb42b2bf872e63410e55c19ddd133142

prepare() {
  cd $srcdir/$_pkgname-$pkgver

  msg 'renaming wrong OS name'
  _OS=$(uname -o)
  [[ $_OS == GNU ]] && sed -i 's|BUILD_PLATFORM;|"GNU";|' source/creator/buildinfo.c
  [[ $_OS == GNU/Linux ]] && sed -i 's|BUILD_PLATFORM;|"GNU/Linux";|' source/creator/buildinfo.c
  [[ $_OS == GNU/kFreeBSD ]] && sed -i 's|BUILD_PLATFORM;|"GNU/kFreeBSD";|' source/creator/buildinfo.c
  sed -i 's|Linux, Mac OS X, Windows and FreeBSD|GNU and BSD|
          s|Linux, FreeBSD|GNU and BSD|
          s|Unpack the archive, Then run the Blender executable.|Intall from Parabola repo (pacman -S '"$pkgname"'), Then run blender.|
          \|Windows|d;\|Mac OS X|d
          s|The downloaded Blender package includes|The '"${pkgname^}"' package includes|
         ' release/text/readme.html
  sed -i 's|Linux|GNU|
         ' release/scripts/{addons/game_engine_save_as_runtime,modules/bl_i18n_utils/utils_rtl}.py
  sed -i 's| (.so under Linux, .dll under windows...)| (.so under GNU or BSD, .dll under Wine or ReactOS...)|
         ' release/scripts/{addons/ui_translate,modules/bl_i18n_utils}/settings.py

  msg 'removing Open Source term'
  sed -i 's|free, open source|free|
          s|free and open-source|free|
          s|open-source and free|free|
         ' release/text/readme.html

  msg 'fixing povray-libre path and desc'
  sed -i "s|FILE_PATH',|FILE_PATH',\n                default='/usr/bin/povray',|
          s|both POV-Ray 3[.]7 and this script are beta|this script is beta|
         " release/scripts/addons/render_povray/__init__.py  

  mkdir -v build
}

build() {
  cd $srcdir/$_pkgname-$pkgver/build

  [[ $CARCH == x86_64 || $CARCH == i686 ]] && _SSE=ON _SSE2=ON || _SSE=OFF _SSE2=OFF
  [[ $_spn == true ]] && _NDOF=ON || _NDOF=OFF
  cmake ..\
    -DCMAKE_BUILD_TYPE=Release\
    -DCMAKE_INSTALL_PREFIX=/usr\
    -DOPENIMAGEIO_ROOT_DIR=/usr\
    -DOPENJPEG_INCLUDE_DIR=/usr/include/openjpeg-$_jpgver\
    -DPYTHON_INCLUDE_DIRS=/usr/include/python${_pyver}m\
    -DPYTHON_LIBPATH=/usr/lib\
    -DPYTHON_LIBRARY=python${_pyver}m\
    -DPYTHON_VERSION=$_pyver\
    -DSUPPORT_SSE_BUILD=$_SSE\
    -DSUPPORT_SSE2_BUILD=$_SSE2\
    -DWITH_BULLET=ON\
    -DWITH_CODEC_FFMPEG=ON\
    -DWITH_CODEC_SNDFILE=ON\
    -DWITH_CYCLES=ON\
    -DWITH_CYCLES_CUDA_BINARIES=OFF\
    -DWITH_CYCLES_OSL=ON\
    -DWITH_FFTW3=ON\
    -DWITH_GAMEENGINE=ON\
    -DWITH_IMAGE_REDCODE=ON\
    -DWITH_INPUT_NDOF=$_NDOF\
    -DWITH_INSTALL_PORTABLE=OFF\
    -DWITH_JACK=ON\
    -DWITH_JACK_DYNLOAD=OFF\
    -DWITH_MEM_JEMALLOC=OFF\
    -DWITH_MOD_OCEANSIM=ON\
    -DWITH_OPENCOLLADA=ON\
    -DWITH_PLAYER=ON\
    -DWITH_PYTHON_INSTALL=OFF\
    -DWITH_SYSTEM_GLEW=ON
  make $MAKEFLAGS
  make
}

package() {
  cd $srcdir/$_pkgname-$pkgver/build
  make DESTDIR=$pkgdir install
  python -m compileall $pkgdir/usr/share/$_pkgname
}