annotate build.sh @ 10:455db4624bce

Check update on build
author Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
date Fri, 31 Jan 2014 22:58:46 +0900
parents e0c4a349c94f
children 9dca7035ab93
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
5ceacb9a06c7 Add build script
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #/bin/sh
5ceacb9a06c7 Add build script
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
6
f6d65d2a806f Split const definitions into config/definition.sh
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
3 # source definitions
f6d65d2a806f Split const definitions into config/definition.sh
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
4 . `dirname $0`/config/definition.sh
2
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
5
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
6 # functions
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
7
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
8 command_check() {
6
f6d65d2a806f Split const definitions into config/definition.sh
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
9 if !(which ${build_command} >& /dev/null;) then
f6d65d2a806f Split const definitions into config/definition.sh
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
10 echo ${build_command} not found
2
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
11 exit
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
12 fi
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
13 }
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
14
10
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
15 slide_name_from_full_path() {
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
16 echo $1 | sed -e 's/.[^.]*$/.html/'
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
17 }
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
18
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
19
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
20 need_build() {
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
21 slide_name=`slide_name_from_full_path $1`
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
22
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
23 if [ "${slide_name}" -ot "$1" ]; then
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
24 return 0 # if exist slide and newer than src, not needed.
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
25 fi
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
26
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
27 return 1
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
28 }
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
29
2
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
30 build() {
6
f6d65d2a806f Split const definitions into config/definition.sh
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
31 ${build_command} build $1 -o `dirname $1` ${build_template_option}
4
ab0287707334 Support exec build scirpt in any working directory
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 2
diff changeset
32 }
2
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
33
4
ab0287707334 Support exec build scirpt in any working directory
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 2
diff changeset
34 build_slides() {
7
e0c4a349c94f Copy template when generate new slide
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
35 target_list=`find "$(dirname $0)/${slide_root_dirname}" -name "${build_target_filename}"`
4
ab0287707334 Support exec build scirpt in any working directory
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 2
diff changeset
36 for target in ${target_list}; do
10
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
37 if need_build $target; then
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
38 build $target
455db4624bce Check update on build
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
39 fi
4
ab0287707334 Support exec build scirpt in any working directory
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 2
diff changeset
40 done
2
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
41 }
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
42
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
43
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
44 # main
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
45
635d8af3f795 Fix build script, check command
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
46 command_check
4
ab0287707334 Support exec build scirpt in any working directory
Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
parents: 2
diff changeset
47 build_slides