diff options
| author | Lars Hjemli <hjemli@gmail.com> | 2007-05-15 00:48:31 +0200 | 
|---|---|---|
| committer | Lars Hjemli <hjemli@gmail.com> | 2007-05-15 00:48:31 +0200 | 
| commit | ea2831f1c826d92c0158474c2d07837ec2f9fd6c (patch) | |
| tree | e8d6a89bf0f50835f9c86dd642e7906e1d050df7 | |
| parent | 6fb7d09fea94b3dd6932469283358cb24f1e7e29 (diff) | |
Don't hardcode urls when SCRIPT_NAME is available
Also, let the makefile define the name of the installed cgi and
use that definition as a default value for cgit_script_name variable.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | cgit.c | 2 | ||||
| -rw-r--r-- | cgit.h | 1 | ||||
| -rw-r--r-- | shared.c | 2 | ||||
| -rw-r--r-- | ui-shared.c | 4 | 
5 files changed, 9 insertions, 4 deletions
| @@ -5,6 +5,7 @@ prefix = /var/www/htdocs/cgit  SHA1_HEADER = <openssl/sha.h>  CACHE_ROOT = /var/cache/cgit  CGIT_CONFIG = /etc/cgitrc +CGIT_SCRIPT_NAME = cgit.cgi  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 \ @@ -21,6 +22,7 @@ CFLAGS += -Igit  CFLAGS += -DSHA1_HEADER='$(SHA1_HEADER)'  CFLAGS += -DCGIT_VERSION='"$(CGIT_VERSION)"'  CFLAGS += -DCGIT_CONFIG='"$(CGIT_CONFIG)"' +CFLAGS += -DCGIT_SCRIPT_NAME='"$(CGIT_SCRIPT_NAME)"'  # @@ -56,7 +58,7 @@ git/libgit.a:  #  install: all clean-cache  	mkdir -p $(prefix) -	install cgit $(prefix)/cgit.cgi +	install cgit $(prefix)/$(CGIT_SCRIPT_NAME)  	install cgit.css $(prefix)/cgit.css  	install add.png del.png $(prefix)/ @@ -244,6 +244,8 @@ int main(int argc, const char **argv)  	cgit_repolist.repos = NULL;  	cgit_read_config(CGIT_CONFIG, cgit_global_config_cb); +	if (getenv("SCRIPT_NAME")) +		cgit_script_name = xstrdup(getenv("SCRIPT_NAME"));  	if (getenv("QUERY_STRING"))  		cgit_querystring = xstrdup(getenv("QUERY_STRING"));  	cgit_parse_args(argc, argv); @@ -75,6 +75,7 @@ extern char *cgit_logo;  extern char *cgit_logo_link;  extern char *cgit_module_link;  extern char *cgit_virtual_root; +extern char *cgit_script_name;  extern char *cgit_cache_root;  extern int cgit_nocache; @@ -17,7 +17,7 @@ char *cgit_logo         = "/git-logo.png";  char *cgit_logo_link    = "http://www.kernel.org/pub/software/scm/git/docs/";  char *cgit_module_link  = "./?repo=%s&page=commit&id=%s";  char *cgit_virtual_root = NULL; - +char *cgit_script_name  = CGIT_SCRIPT_NAME;  char *cgit_cache_root   = "/var/cache/cgit";  int cgit_nocache               =  0; diff --git a/ui-shared.c b/ui-shared.c index 6f5cf2b..b0cff7d 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -45,7 +45,7 @@ char *cgit_rooturl()  	if (cgit_virtual_root)  		return fmt("%s/", cgit_virtual_root);  	else -		return "./cgit.cgi"; +		return cgit_script_name;  }  char *cgit_repourl(const char *reponame) @@ -71,7 +71,7 @@ char *cgit_pageurl(const char *reponame, const char *pagename,  char *cgit_currurl()  {  	if (!cgit_virtual_root) -		return "./cgit.cgi"; +		return cgit_script_name;  	else if (cgit_query_page)  		return fmt("%s/%s/%s/", cgit_virtual_root, cgit_query_repo, cgit_query_page);  	else if (cgit_query_repo) | 
