annotate templates/cmake.sh @ 11:3080f96acd07

templates: add cmake.sh
author David Demelier <markand@malikania.fr>
date Fri, 22 Feb 2019 16:10:20 +0100
parents
children 6639623adb59
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
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 . ./template.info
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
19
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 CWD=$(pwd)
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 TMP=${TMP:-/tmp/vpk}
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
22
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 OBJDIR=$TMP/${PKGNAME}.work
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 DSTDIR=$TMP/${PKGNAME}.install
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 OUTDIR=$TMP/pkg
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
26
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 case $(uname -m) in
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 x86_64)
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 ARCH="amd64"
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 CFLAGS="-O2 -fPIC"
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 ;;
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 *)
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 ARCH="$(uname -m)"
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 CFLAGS="-O2"
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 ;;
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 esac
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
37
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
38 set -e
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 rm -rf $DSTDIR $OBJDIR
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
40
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 mkdir -p $DSTDIR $OBJDIR $OUTDIR && cd $OBJDIR
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 tar xvaf $CWD/$PKGNAME-$PKGVERSION.tar.gz
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
43 cd $PKGNAME-$PKGVERSION
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
44
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 mkdir build && cd build
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 cmake .. \
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
47 -DCMAKE_C_FLAGS="$CFLAGS" \
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
48 -DCMAKE_CXX_FLAGS="$CFLAGS" \
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
49 -DCMAKE_INSTALL_PREFIX=/usr
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
50 make
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
51 make install DESTDIR=$DSTDIR
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
52
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
53 cd $DSTDIR
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
54 vpk package $OUTDIR/$PKGNAME-$PKGVERSION-$ARCH.txz
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
55
3080f96acd07 templates: add cmake.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
56 rm -rf $DSTDIR $OBJDIR