annotate Templates/build/cmake.sh @ 1050:04aff963363f

system/pm-utils: initial import, closes #1069
author David Demelier <markand@malikania.fr>
date Fri, 30 Aug 2019 22:37:36 +0200
parents 34c9fa83dc08
children e98d653d4d58
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1027
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #!/bin/busybox sh
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 #
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 # Copyright (c) 2019 FirstName LastName <mailaddress>
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 #
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 # Permission to use, copy, modify, and/or distribute this software for any
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # purpose with or without fee is hereby granted, provided that the above
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # copyright notice and this permission notice appear in all copies.
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 #
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 #
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
17
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 PKGNAME=name
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 PKGVERSION=1.0.0
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 PKGREVISION=1
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 PKGLICENSE="one of README.licenses.md or CUSTOM"
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 PKGSUMMARY="short summary"
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 PKGDOWNLOAD="http://example.org/$PKGNAME-$PKGVERSION.tar.xz"
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 PKGDEPENDS="cmake:build"
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 # PKGOPTIONS="FOO BAR BAZ"
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
26
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 : ${CC:=clang}
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 : ${CFLAGS:=-O2}
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 : ${CXX:=clang++}
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 : ${CXXFLAGS:=-O2}
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
31
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 build()
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 {
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 rm -rf $PKGNAME-$PKGVERSION
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 tar xvf $PKGNAME-$PKGVERSION.tar.gz
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 cd $PKGNAME-$PKGVERSION
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
37
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
38 mkdir build && cd build
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 cmake .. \
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 -DBUILD_SHARED_LIBS=On \
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 -DCMAKE_BUILD_TYPE=Release \
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 -DCMAKE_CXX_COMPILER="$CXX" \
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
43 -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
44 -DCMAKE_C_COMPILER="$CC" \
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 -DCMAKE_C_FLAGS="$CFLAGS" \
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 -DCMAKE_INSTALL_PREFIX=
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
47 make
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
48 make install DESTDIR=$DESTDIR
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
49 cd ..
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
50
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
51 cd ..
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
52 rm -rf $PKGNAME-$PKGVERSION
34c9fa83dc08 vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff changeset
53 }