diff options
author | Lars Hjemli <hjemli@gmail.com> | 2007-06-18 16:42:10 (JST) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2007-06-18 17:38:40 (JST) |
commit | f69250358a74efa5d7d9c562b2cdd80fad1430f1 (patch) | |
tree | 19c0ddab227d1c27a49046e559618cd067169591 | |
parent | 4a0be586662843382ecfa53af34a13b291312bc0 (diff) | |
download | cgit-f69250358a74efa5d7d9c562b2cdd80fad1430f1.zip cgit-f69250358a74efa5d7d9c562b2cdd80fad1430f1.tar.gz |
Add version info from git-describe
A new script, gen-version.sh, is now invoked from 'make version' to generate
the file VERSION. This file contains a version identifier generated by
git-describe and is included in the Makefile.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 29 | ||||
-rw-r--r-- | cgit.c | 3 | ||||
-rw-r--r-- | cgit.h | 2 | ||||
-rwxr-xr-x | gen-version.sh | 4 | ||||
-rw-r--r-- | shared.c | 2 | ||||
-rw-r--r-- | ui-shared.c | 2 |
7 files changed, 27 insertions, 16 deletions
@@ -1,4 +1,5 @@ | |||
1 | # Files I don't care to see in git-status/commit | 1 | # Files I don't care to see in git-status/commit |
2 | cgit | 2 | cgit |
3 | VERSION | ||
3 | *.o | 4 | *.o |
4 | *~ | 5 | *~ |
@@ -1,7 +1,4 @@ | |||
1 | CGIT_VERSION = 0.5 | ||
2 | |||
3 | prefix = /var/www/htdocs/cgit | 1 | prefix = /var/www/htdocs/cgit |
4 | |||
5 | SHA1_HEADER = <openssl/sha.h> | 2 | SHA1_HEADER = <openssl/sha.h> |
6 | CACHE_ROOT = /var/cache/cgit | 3 | CACHE_ROOT = /var/cache/cgit |
7 | CGIT_CONFIG = /etc/cgitrc | 4 | CGIT_CONFIG = /etc/cgitrc |
@@ -12,6 +9,17 @@ CGIT_SCRIPT_NAME = cgit.cgi | |||
12 | # | 9 | # |
13 | -include cgit.conf | 10 | -include cgit.conf |
14 | 11 | ||
12 | |||
13 | CGIT_VERSION = 0.5 | ||
14 | |||
15 | all: cgit | ||
16 | |||
17 | VERSION: | ||
18 | gen-version.sh | ||
19 | |||
20 | -include VERSION | ||
21 | |||
22 | |||
15 | EXTLIBS = git/libgit.a git/xdiff/lib.a -lz -lcrypto | 23 | EXTLIBS = git/libgit.a git/xdiff/lib.a -lz -lcrypto |
16 | OBJECTS = shared.o cache.o parsing.o html.o ui-shared.o ui-repolist.o \ | 24 | OBJECTS = shared.o cache.o parsing.o html.o ui-shared.o ui-repolist.o \ |
17 | ui-summary.o ui-log.o ui-tree.o ui-commit.o ui-diff.o \ | 25 | ui-summary.o ui-log.o ui-tree.o ui-commit.o ui-diff.o \ |
@@ -42,12 +50,7 @@ INITGIT = ./submodules.sh -i | |||
42 | endif | 50 | endif |
43 | 51 | ||
44 | 52 | ||
45 | # | 53 | cgit: cgit.c cgit.h VERSION $(OBJECTS) |
46 | # basic build rules | ||
47 | # | ||
48 | all: cgit | ||
49 | |||
50 | cgit: cgit.c cgit.h $(OBJECTS) | ||
51 | $(CC) $(CFLAGS) cgit.c -o cgit $(OBJECTS) $(EXTLIBS) | 54 | $(CC) $(CFLAGS) cgit.c -o cgit $(OBJECTS) $(EXTLIBS) |
52 | 55 | ||
53 | $(OBJECTS): cgit.h git/libgit.a | 56 | $(OBJECTS): cgit.h git/libgit.a |
@@ -65,7 +68,7 @@ install: all clean-cache | |||
65 | install cgit.css $(prefix)/cgit.css | 68 | install cgit.css $(prefix)/cgit.css |
66 | 69 | ||
67 | clean-cgit: | 70 | clean-cgit: |
68 | rm -f cgit *.o | 71 | rm -f cgit VERSION *.o |
69 | 72 | ||
70 | distclean-cgit: clean-cgit | 73 | distclean-cgit: clean-cgit |
71 | git clean -d -x | 74 | git clean -d -x |
@@ -83,5 +86,9 @@ clean: clean-cgit clean-sub | |||
83 | 86 | ||
84 | distclean: distclean-cgit distclean-sub | 87 | distclean: distclean-cgit distclean-sub |
85 | 88 | ||
89 | version: clean-cgit | ||
90 | ./gen-version.sh | ||
91 | make | ||
92 | |||
86 | .PHONY: all install clean clean-cgit clean-sub clean-cache \ | 93 | .PHONY: all install clean clean-cgit clean-sub clean-cache \ |
87 | distclean distclean-cgit distclean-sub | 94 | distclean distclean-cgit distclean-sub release version |
@@ -8,9 +8,6 @@ | |||
8 | 8 | ||
9 | #include "cgit.h" | 9 | #include "cgit.h" |
10 | 10 | ||
11 | const char cgit_version[] = CGIT_VERSION; | ||
12 | |||
13 | |||
14 | static int cgit_prepare_cache(struct cacheitem *item) | 11 | static int cgit_prepare_cache(struct cacheitem *item) |
15 | { | 12 | { |
16 | if (!cgit_repo && cgit_query_repo) { | 13 | if (!cgit_repo && cgit_query_repo) { |
@@ -98,7 +98,7 @@ struct taginfo { | |||
98 | char *msg; | 98 | char *msg; |
99 | }; | 99 | }; |
100 | 100 | ||
101 | extern const char cgit_version[]; | 101 | extern const char *cgit_version; |
102 | 102 | ||
103 | extern struct repolist cgit_repolist; | 103 | extern struct repolist cgit_repolist; |
104 | extern struct repoinfo *cgit_repo; | 104 | extern struct repoinfo *cgit_repo; |
diff --git a/gen-version.sh b/gen-version.sh new file mode 100755 index 0000000..4c60f60 --- /dev/null +++ b/gen-version.sh | |||
@@ -0,0 +1,4 @@ | |||
1 | v=$(git-describe --abbrev=4 HEAD | sed -e 's/-/./g') | ||
2 | test -z "$v" && exit 1 | ||
3 | echo "CGIT_VERSION = $v" | ||
4 | echo "CGIT_VERSION = $v" > VERSION | ||
@@ -12,6 +12,8 @@ struct repolist cgit_repolist; | |||
12 | struct repoinfo *cgit_repo; | 12 | struct repoinfo *cgit_repo; |
13 | int cgit_cmd; | 13 | int cgit_cmd; |
14 | 14 | ||
15 | const char *cgit_version = CGIT_VERSION; | ||
16 | |||
15 | char *cgit_root_title = "Git repository browser"; | 17 | char *cgit_root_title = "Git repository browser"; |
16 | char *cgit_css = "/cgit.css"; | 18 | char *cgit_css = "/cgit.css"; |
17 | char *cgit_logo = "/git-logo.png"; | 19 | char *cgit_logo = "/git-logo.png"; |
diff --git a/ui-shared.c b/ui-shared.c index 15d8254..110c696 100644 --- a/ui-shared.c +++ b/ui-shared.c | |||
@@ -262,7 +262,7 @@ void cgit_print_docstart(char *title, struct cacheitem *item) | |||
262 | html("<title>"); | 262 | html("<title>"); |
263 | html_txt(title); | 263 | html_txt(title); |
264 | html("</title>\n"); | 264 | html("</title>\n"); |
265 | htmlf("<meta name='generator' content='cgit v%s'/>\n", cgit_version); | 265 | htmlf("<meta name='generator' content='cgit %s'/>\n", cgit_version); |
266 | html("<link rel='stylesheet' type='text/css' href='"); | 266 | html("<link rel='stylesheet' type='text/css' href='"); |
267 | html_attr(cgit_css); | 267 | html_attr(cgit_css); |
268 | html("'/>\n"); | 268 | html("'/>\n"); |