blob: 5f9e8f9974d0d165fd2c88848075148f34071a70 (
plain)
1 # Description: A tiling window manager (depends only on ports from our ISO)
2 # URL: http://i3wm.org/
3 # Maintainer: Juergen Daubert, jue at crux dot nu
4 # Depends on: cmake pango xorg-xcb-util-cursor xorg-xcb-util-keysyms xorg-xcb-util-wm
5
6 name=i3
7 version=4.18
8 release=2
9 source=(http://i3wm.org/downloads/$name-$version.tar.bz2
10 https://github.com/lloyd/yajl/archive/2.1.0/yajl-2.1.0.tar.gz
11 http://dist.schmorp.de/libev/Attic/libev-4.31.tar.gz
12 http://www.freedesktop.org/software/startup-notification/releases/startup-notification-0.12.tar.gz
13 http://xkbcommon.org/download/libxkbcommon-0.10.0.tar.xz
14 https://github.com/Airblader/xcb-util-xrm/releases/download/v1.3/xcb-util-xrm-1.3.tar.bz2)
15
16 build() {
17
18 local LIBS=$SRC/$name-$version/libs
19 install -d $LIBS/{lib,include}
20
21 # xcb-util-xrm
22 cd $SRC/xcb-util-xrm-1.3
23 ./configure --prefix=/ --disable-shared
24 make
25 make DESTDIR=$LIBS install
26
27 # libxkbcommon
28 cd $SRC/libxkbcommon-0.10.0
29 meson build --prefix=/ --default-library=static -Denable-{wayland,docs}=false
30 ninja -C build -j ${JOBS:-1}
31 DESTDIR=$LIBS ninja -C build install
32
33 # yajl
34 cd $SRC/yajl-2.1.0
35 cmake . -Wno-dev
36 make
37 cp -r yajl-2.1.0/include $LIBS
38 cp yajl-2.1.0/lib/libyajl_s.a $LIBS/lib/libyajl.a
39 cp yajl-2.1.0/share/pkgconfig/yajl.pc $LIBS/lib/pkgconfig
40
41 # libev
42 cd $SRC/libev-4.31
43 ./configure --prefix=/ --disable-shared
44 make
45 make DESTDIR=$LIBS install
46
47 # startup-notification
48 cd $SRC/startup-notification-0.12
49 sed -i '/^Libs: /s/$/ -lX11-xcb/' libstartup-notification-1.0.pc.in
50 ./configure --prefix=/ --disable-shared
51 make
52 make DESTDIR=$LIBS install
53 mv $LIBS/include/{startup-notification-1.0/libsn,libsn}
54
55 # i3
56 cd $SRC/$name-$version
57 export CFLAGS="$CFLAGS -I$LIBS/include"
58 export LDFLAGS="$LDFLAGS -L$LIBS/lib"
59 export PKG_CONFIG_PATH="$LIBS/lib/pkgconfig"
60 ./configure --prefix=/usr --disable-builddir
61 make
62 make DESTDIR=$PKG install
63 install -d $PKG/usr/share/man/man1
64 install -m 0644 man/*.1 $PKG/usr/share/man/man1/
65 }
|