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>
This commit is contained in:
Lars Hjemli 2007-06-18 09:42:10 +02:00
bovenliggende 4a0be58666
commit f69250358a
7 gewijzigde bestanden met toevoegingen van 27 en 16 verwijderingen

1
.gitignore vendored
Bestand weergeven

@ -1,4 +1,5 @@
# Files I don't care to see in git-status/commit # Files I don't care to see in git-status/commit
cgit cgit
VERSION
*.o *.o
*~ *~

Bestand weergeven

@ -1,7 +1,4 @@
CGIT_VERSION = 0.5
prefix = /var/www/htdocs/cgit prefix = /var/www/htdocs/cgit
SHA1_HEADER = <openssl/sha.h> SHA1_HEADER = <openssl/sha.h>
CACHE_ROOT = /var/cache/cgit CACHE_ROOT = /var/cache/cgit
CGIT_CONFIG = /etc/cgitrc CGIT_CONFIG = /etc/cgitrc
@ -12,6 +9,17 @@ CGIT_SCRIPT_NAME = cgit.cgi
# #
-include cgit.conf -include cgit.conf
CGIT_VERSION = 0.5
all: cgit
VERSION:
gen-version.sh
-include VERSION
EXTLIBS = git/libgit.a git/xdiff/lib.a -lz -lcrypto EXTLIBS = git/libgit.a git/xdiff/lib.a -lz -lcrypto
OBJECTS = shared.o cache.o parsing.o html.o ui-shared.o ui-repolist.o \ OBJECTS = shared.o cache.o parsing.o html.o ui-shared.o ui-repolist.o \
ui-summary.o ui-log.o ui-tree.o ui-commit.o ui-diff.o \ ui-summary.o ui-log.o ui-tree.o ui-commit.o ui-diff.o \
@ -42,12 +50,7 @@ INITGIT = ./submodules.sh -i
endif endif
# cgit: cgit.c cgit.h VERSION $(OBJECTS)
# basic build rules
#
all: cgit
cgit: cgit.c cgit.h $(OBJECTS)
$(CC) $(CFLAGS) cgit.c -o cgit $(OBJECTS) $(EXTLIBS) $(CC) $(CFLAGS) cgit.c -o cgit $(OBJECTS) $(EXTLIBS)
$(OBJECTS): cgit.h git/libgit.a $(OBJECTS): cgit.h git/libgit.a
@ -65,7 +68,7 @@ install: all clean-cache
install cgit.css $(prefix)/cgit.css install cgit.css $(prefix)/cgit.css
clean-cgit: clean-cgit:
rm -f cgit *.o rm -f cgit VERSION *.o
distclean-cgit: clean-cgit distclean-cgit: clean-cgit
git clean -d -x git clean -d -x
@ -83,5 +86,9 @@ clean: clean-cgit clean-sub
distclean: distclean-cgit distclean-sub distclean: distclean-cgit distclean-sub
version: clean-cgit
./gen-version.sh
make
.PHONY: all install clean clean-cgit clean-sub clean-cache \ .PHONY: all install clean clean-cgit clean-sub clean-cache \
distclean distclean-cgit distclean-sub distclean distclean-cgit distclean-sub release version

3
cgit.c
Bestand weergeven

@ -8,9 +8,6 @@
#include "cgit.h" #include "cgit.h"
const char cgit_version[] = CGIT_VERSION;
static int cgit_prepare_cache(struct cacheitem *item) static int cgit_prepare_cache(struct cacheitem *item)
{ {
if (!cgit_repo && cgit_query_repo) { if (!cgit_repo && cgit_query_repo) {

2
cgit.h
Bestand weergeven

@ -98,7 +98,7 @@ struct taginfo {
char *msg; char *msg;
}; };
extern const char cgit_version[]; extern const char *cgit_version;
extern struct repolist cgit_repolist; extern struct repolist cgit_repolist;
extern struct repoinfo *cgit_repo; extern struct repoinfo *cgit_repo;

4
gen-version.sh Executable file
Bestand weergeven

@ -0,0 +1,4 @@
v=$(git-describe --abbrev=4 HEAD | sed -e 's/-/./g')
test -z "$v" && exit 1
echo "CGIT_VERSION = $v"
echo "CGIT_VERSION = $v" > VERSION

Bestand weergeven

@ -12,6 +12,8 @@ struct repolist cgit_repolist;
struct repoinfo *cgit_repo; struct repoinfo *cgit_repo;
int cgit_cmd; int cgit_cmd;
const char *cgit_version = CGIT_VERSION;
char *cgit_root_title = "Git repository browser"; char *cgit_root_title = "Git repository browser";
char *cgit_css = "/cgit.css"; char *cgit_css = "/cgit.css";
char *cgit_logo = "/git-logo.png"; char *cgit_logo = "/git-logo.png";

Bestand weergeven

@ -262,7 +262,7 @@ void cgit_print_docstart(char *title, struct cacheitem *item)
html("<title>"); html("<title>");
html_txt(title); html_txt(title);
html("</title>\n"); html("</title>\n");
htmlf("<meta name='generator' content='cgit v%s'/>\n", cgit_version); htmlf("<meta name='generator' content='cgit %s'/>\n", cgit_version);
html("<link rel='stylesheet' type='text/css' href='"); html("<link rel='stylesheet' type='text/css' href='");
html_attr(cgit_css); html_attr(cgit_css);
html("'/>\n"); html("'/>\n");