aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Move function for configfile parsing into configfile.[ch]Gravatar Lars Hjemli2008-03-28-78/+99
| | | | | | This is a generic function which wanted its own little object file. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add cache.hGravatar Lars Hjemli2008-03-27-14/+25
| | | | | | | | The functions found in cache.c are only used by cgit.c, so there's no point in rebuilding all object files when the cache interface is changed. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Remove global and obsolete cgit_cmdGravatar Lars Hjemli2008-03-25-2/+1
| | | | | | This variable was obsoleted by cmd.c. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Makefile: copy the QUIET constructs from the Makefile in git.gitGravatar Lars Hjemli2008-03-25-5/+31
| | | | | | | These constructs were introduced by Shawn O. Pearce in commit 74f2b2a8d006a49e1be7e30731c2f7365d2741d1. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Move cgit_version from shared.c to cgit.cGravatar Lars Hjemli2008-03-25-3/+5
| | | | | | | With the matching Makefile change, this makes sure that only cgit.o and cgit proper needs to be rebuildt when VERSION has been modified. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Makefile: autobuild dependency rulesGravatar Lars Hjemli2008-03-25-1/+11
| | | | | | | | | | | | | | | | This uses gcc to generate dependency rules for each `.o` file, based on the corresponding `.c` file, into a new set of `.d` files (which are also defined to depend on the same set of source files as their `.o` files). Result: * all objectfile dependencies are correctly calculated * only the necessary dependencies are recalculated when a sourcefile is updated Inspiration for the build rules: * http://www.gnu.org/software/make/manual/make.html#Automatic-Prerequisites * http://make.paulandlesley.org/autodep.html Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Initial Makefile cleanupGravatar Lars Hjemli2008-03-25-7/+22
| | | | | | | Sort the list of object files to improve readability/mergeability and remove manual dependency information which will soon be generated automatically. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Move non-generic functions from shared.c to cgit.cGravatar Lars Hjemli2008-03-25-157/+155
| | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add ui-shared.hGravatar Lars Hjemli2008-03-25-32/+47
| | | | | | | This is finally a proper headerfile for the shared ui-functions which used to reside in cgit.h Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add separate header-files for each page/viewGravatar Lars Hjemli2008-03-25-189/+257
| | | | | | Yet another step towards removing cgit.h. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Refactor snapshot supportGravatar Lars Hjemli2008-03-25-86/+90
| | | | | | | | | The snapshot support needs to be split between output- and config-related functions to get the layering between shared.c and ui-*.c right. There is also some codestyle-issues which needs fixing to make the snapshot functions more similar to the rest of the cgit code. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add command dispatcherGravatar Lars Hjemli2008-03-24-110/+169
| | | | | | | This simplifies the code in cgit.c and makes it easier to extend cgit with new pages/commands. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Remove obsolete cacheitem parameter to ui-functionsGravatar Lars Hjemli2008-03-24-17/+16
| | | | | | This parameter hasn't been used for a very long time... Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add struct cgit_page to cgit_contextGravatar Lars Hjemli2008-03-24-88/+113
| | | | | | | | This struct is used when generating http headers, and as such is another small step towards the goal of the whole cleanup series; to invoke each page/view function with a function pointer. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Introduce html.hGravatar Lars Hjemli2008-03-18-46/+71
| | | | | | | | All html-functions can be quite easily separated from the rest of cgit, so lets do it; the only issue was html_filemode which uses some git-defined macros so the function is moved into ui-shared.c::cgit_print_filemode(). Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Improve initialization of git directoryGravatar Lars Hjemli2008-02-17-10/+9
| | | | | | | Using the functions offered by libgit feels like the right thing to do. Also, make sure that config errors gets properly reported. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Move cgit_repo into cgit_contextGravatar Lars Hjemli2008-02-16-103/+101
| | | | | | | | This removes the global variable which is used to keep track of the currently selected repository, and adds a new variable in the cgit_context structure. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add all config variables into struct cgit_contextGravatar Lars Hjemli2008-02-16-175/+166
| | | | | | | | This removes another big set of global variables, and introduces the cgit_prepare_context() function which populates a context-variable with compile-time default values. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Introduce struct cgit_contextGravatar Lars Hjemli2008-02-16-164/+156
| | | | | | | | | This struct will hold all the cgit runtime information currently found in a multitude of global variables. The first cleanup removes all querystring-related variables. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Use GIT-1.5.4.1Gravatar Lars Hjemli2008-02-16-1/+1
|
* Use GIT-1.5.4Gravatar Lars Hjemli2008-02-02-1/+1
|
* Use GIT-1.5.4.rc5Gravatar Lars Hjemli2008-01-29-1/+1
|
* Use GIT-1.5.4.rc4Gravatar Lars Hjemli2008-01-21-2/+2
|
* Merge branch 'stable'Gravatar Lars Hjemli2008-01-14-6/+7
|\ | | | | | | | | | | | | | | * stable: CGIT 0.7.2 Use GIT-1.5.3.8 Compare string lengths when parsing the snapshot mask Default repo description to "[no description]"
| * CGIT 0.7.2Gravatar Lars Hjemli2008-01-10-1/+1
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Use GIT-1.5.3.8Gravatar Lars Hjemli2008-01-10-1/+1
| |
| * Compare string lengths when parsing the snapshot maskGravatar Lars Hjemli2007-12-03-3/+4
| | | | | | | | | | | | | | | | | | | | We used to rely on the result from strncmp() without comparing the length of the strings involved. Even worse, any single-character format specifier would enable zip-format due to the optional '.'-prefix since the length of the mask then would become zero. Noticed-by: Evan Martin <sys@neugierig.org> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Default repo description to "[no description]"Gravatar Evan Martin2007-12-03-1/+1
| | | | | | | | | | | | | | Otherwise, when you leave out a description for a repository, the NULL default causes cgit to print out titles like "cgit - (null)". Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Check for NULL-subject in patch viewGravatar Lars Hjemli2008-01-10-1/+6
| | | | | | | | | | | | While at it, make sure the commit message ends with a '\n'. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Handle missing default branch and error out on invalid branch namesGravatar Lars Hjemli2008-01-04-4/+58
| | | | | | | | | | | | | | | | | | | | When no branch is specified and the repository does not have a default branch, use the first branch. Also, print sensible errormessages when the repository does not contain any branches and when invalid branchnames are specified. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add plain patch viewGravatar Lars Hjemli2007-12-11-2/+122
| | | | | | | | | | | | | | | | | | | | The new view mimics the output from `git format-patch`, making it possible to cherry-pick directly from cgit with something like `curl $url | git am`. Inspired by a patch to `git-apply` by Mike Hommey: http://thread.gmane.org/gmane.comp.version-control.git/67611/focus=67610 Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add support for automatic and custom clone urlsGravatar Lars Hjemli2007-12-03-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for two new parameters to cgitrc: clone-prefix and repo.clone-url. If clone-prefix is specified, all repos will get a clone url printed in the sidebar; the url is generated by clone-prefix + repo.url. Additionally, each repo can specify repo.clone-url which will override any such auto-generated url. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Gravatar Lars Hjemli2007-12-03-3/+7
|\ \ | |/ | | | | | | | | * stable: Handle missing timestamp in commit/tag objects Set commit date on snapshot contents
| * Handle missing timestamp in commit/tag objectsGravatar Lars Hjemli2007-12-03-3/+7
| | | | | | | | | | | | | | | | | | | | When a commit or tag lacks author/committer/tagger timestamp, do not skip the next line in the commit/tag object. Also, do not bother to print timestamps with value 0 as it is close to certain to be bogus. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Set commit date on snapshot contentsGravatar Lars Hjemli2007-11-11-0/+1
| | | | | | | | | | | | | | | | The testsuite revealed that cgit snapshots don't set any useful timestamp on the files contained in the snapshot. Cherry-picked-from: 2ff33a8a0405b420cd75e0e207c7efeecd6f130b Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add cell-spacing in htmlGravatar Lars Hjemli2007-11-16-1/+1
| | | | | | | | | | | | There are some browsers which don't support the border-spacing property Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Use tables for page layoutGravatar Lars Hjemli2007-11-16-30/+41
| | | | | | | | | | | | | | It feels like the Right Thing, and it fixes some rendering problems in a much used webbrowser. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Gimp my logoGravatar Lars Hjemli2007-11-16-0/+0
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add support for "robots" meta-tagGravatar Lars Hjemli2007-11-12-0/+11
| | | | | | | | | | | | | | | | | | With this change, cgit will start to generate the "robots" meta-tag, using a default value of "index, nofollow". The default value can be modified with a new cgitrc variable, "robots". Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Generate valid html for "downloads" menu headerGravatar Lars Hjemli2007-11-11-1/+1
| | | | | | | | | | Noticed-by: http://validator.w3.org Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'lh/testsuite'Gravatar Lars Hjemli2007-11-11-25/+334
|\ \ | | | | | | | | | | | | | | | | | | * lh/testsuite: Set commit date on snapshot contents Fix html error detected by test-suite Create initial testsuite
| * | Set commit date on snapshot contentsGravatar Lars Hjemli2007-11-11-0/+1
| | | | | | | | | | | | | | | | | | | | | The testsuite revealed that cgit snapshots don't set any useful timestamp on the files contained in the snapshot. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | Fix html error detected by test-suiteGravatar Lars Hjemli2007-11-11-27/+37
| | | | | | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | Create initial testsuiteGravatar Lars Hjemli2007-11-11-1/+299
|/ / | | | | | | | | | | This creates a simple testsuite, heavily inspired by the testsuite in git. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Gravatar Lars Hjemli2007-11-09-4/+7
|\ \ | |/ | | | | | | | | | | | | | | | | * stable: CGIT 0.7.1 Makefile install: include cgit.png, do not empty cache Conflicts: Makefile
| * CGIT 0.7.1Gravatar Lars Hjemli2007-11-09-1/+1
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Makefile install: include cgit.png, do not empty cacheGravatar Lars Hjemli2007-11-09-3/+6
| | | | | | | | | | | | | | The cache-cleaning is potentially dangerous, so lets move it away from the install target. A special emptycache target can be used to run the rm -rf. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Minor css tweaksGravatar Lars Hjemli2007-11-09-10/+1
| | | | | | | | | | | | | | Don't specify border and background color for input controls, reduce font- size of heading in sidebar. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Gravatar Lars Hjemli2007-11-08-2/+4
|\ \ | |/ | | | | | | * stable: Support "/" as virtual-root
| * Support "/" as virtual-rootGravatar Lars Hjemli2007-11-08-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | When the virtual-root was a single "/", it would be normalized to NULL due to removal of trailing slashes, which in turn would fool us to belive that we shouldn't generate virtual urls. This makes the "/" normalize to "", effectively allowing virtual urls like http://example.com/projectname to be generated without specifying the full domain name as the virtual root. Signed-off-by: Lars Hjemli <hjemli@gmail.com>