annotate templates/cmake.sh @ 253:a6c9f6d9a420

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