Subject: Re: [PATCHv5 4/6] instaweb: add minification awareness

From: Jakub Narebski <[email-masked]>
Date: Thu, 1 Apr 2010 13:09:59 +0200

On Thu, 1 Apr 2010, Mark Rada wrote:

> This patch will cause git-instaweb to use the minified version of gitweb
> support files (e.g. CSS and JavaScript) if they were generated.

I was not sure if git-instaweb should use minified files or not, and
that is why I didn't add support for this to git-instaweb generation.
But I forgot that git-instaweb uses gitweb.cgi... which in turn can
use minified versions of gitweb support files.

> 
> Without minification awareness, generating the minified version of
> gitweb's support files will generate a broken instaweb script since the
> copy of gitweb.cgi will look for gitweb.min.* which will not exist.

Good catch!

> 
> Signed-off-by: Mark Rada <[email-masked]>

CC-ed Eric Wong, original author of git-instaweb.sh script.

> ---
> 
> No changes since previous revision.
> 
> 
>  Makefile        |   12 ++++++++++--
>  git-instaweb.sh |    6 ++++--
>  2 files changed, 14 insertions(+), 4 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index ef1a232..c97021f 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1565,9 +1565,15 @@ gitweb:
>  
>  ifdef JSMIN
>  GITWEB_PROGRAMS += gitweb/gitweb.min.js
> +GITWEB_JS = gitweb/gitweb.min.js
> +else
> +GITWEB_JS = gitweb/gitweb.js
>  endif
>  ifdef CSSMIN
>  GITWEB_PROGRAMS += gitweb/gitweb.min.css
> +GITWEB_CSS = gitweb/gitweb.min.css
> +else
> +GITWEB_CSS = gitweb/gitweb.css
>  endif
>  OTHER_PROGRAMS +=  gitweb/gitweb.cgi  $(GITWEB_PROGRAMS)
>  gitweb/gitweb.cgi: gitweb/gitweb.perl $(GITWEB_PROGRAMS)
> @@ -1590,11 +1596,13 @@ git-instaweb: git-instaweb.sh gitweb/gitweb.cgi gitweb/gitweb.css gitweb/gitweb.
>  	    -e 's/@@NO_CURL@@/$(NO_CURL)/g' \
>  	    -e '/@@GITWEB_CGI@@/r gitweb/gitweb.cgi' \
>  	    -e '/@@GITWEB_CGI@@/d' \
> -	    -e '/@@GITWEB_CSS@@/r gitweb/gitweb.css' \
> +	    -e '/@@GITWEB_CSS@@/r $(GITWEB_CSS)' \
>  	    -e '/@@GITWEB_CSS@@/d' \
> -	    -e '/@@GITWEB_JS@@/r gitweb/gitweb.js' \
> +	    -e '/@@GITWEB_JS@@/r $(GITWEB_JS)' \
>  	    -e '/@@GITWEB_JS@@/d' \
>  	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
> +            -e 's|@@GITWEB_CSS_NAME@@|$(GITWEB_CSS)|' \
> +            -e 's|@@GITWEB_JS_NAME@@|$(GITWEB_JS)|' \
>  	    $@.sh > $@+ && \
>  	chmod +x $@+ && \
>  	mv $@+ $@
> diff --git a/git-instaweb.sh b/git-instaweb.sh
> index 6a65f25..d4941a9 100755
> --- a/git-instaweb.sh
> +++ b/git-instaweb.sh
> @@ -391,18 +391,20 @@ EOFGITWEB
>  gitweb_css () {
>  	cat > "$1" <<\EOFGITWEB
>  @@GITWEB_CSS@@
> +
>  EOFGITWEB
>  }
>  
>  gitweb_js () {
>  	cat > "$1" <<\EOFGITWEB
>  @@GITWEB_JS@@
> +
>  EOFGITWEB
>  }
>  
>  gitweb_cgi "$GIT_DIR/gitweb/gitweb.cgi"
> -gitweb_css "$GIT_DIR/gitweb/gitweb.css"
> -gitweb_js  "$GIT_DIR/gitweb/gitweb.js"
> +gitweb_css "$GIT_DIR/@@GITWEB_CSS_NAME@@"
> +gitweb_js  "$GIT_DIR/@@GITWEB_JS_NAME@@"
>  
>  case "$httpd" in
>  *lighttpd*)
> -- 
> 1.7.0.3.519.g7e0613
> 
> 

-- 
Jakub Narebski
Poland