about summary refs log tree commit diff
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* fix(Makefile): entry.o depends on config.hsternenseemann2020-08-241-0/+2
|
* refactor(stringutil): add function catn_alloc to ease url building in main.csternenseemann2020-08-211-1/+1
| | | | | | | | | * bitutil.{c,h} → stringutil.{c,h} (more appropriate) * new function catn_alloc(size_t n, ...) which concats `n` given strings into an dynamically allocated buffer, mostly useful for building URLs which is done in blog_rss. may be a possibility to use in entry.c, but code there might be too specific.
* feat(timeutil): output proper RFC3339 format for atomsternenseemann2020-08-211-1/+1
| | | | | | | | Previously, since we used strftime %z it'd output an offset as +HHMM while RFC3339 requires +HH:MM. Currently we implement outputting this manually which proved to be non-trivial because of the tzset() API. This probably should be improved in the future since I suspect it produces incorrect results in some edge cases.
* feat(rss): minor improvements and refactor time formattingsternenseemann2020-08-201-3/+3
| | | | | | | * add timeutil.{c,h}: utility for formatting timestamps * wrap feed description in CDATA * use xml_escaped where applicable * use time of latest entry for lastBuildDate
* doc(sternenblog.cgi): add preliminary user documentationsternenseemann2020-08-141-1/+12
|
* fix(Makefile): main.c is a requisite for main.osternenseemann2020-08-081-2/+2
|
* feat(treewide): major reworksternenseemann2020-08-081-7/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unfortunately, I got a bit carried away after realizing that the initial change would be a breaking change anyways, so I am now left with a huge diff which can't be really split up. Please excuse this. The changes are as follows: * Rename blogpost → entry (breaking): make_blogpost → make_entry, blog_post → blog_entry etc. * Rename blogdefs.h → core.h (breaking) * Split functions from main.c into cgiutil and entry * entry / make_entry: * Use modification time instead of time in filename (breaking) * Rename timestamp → time (breaking) * Add field title (currently basename, breaking) * Add field text and text_size which can be use to store the contents of the associated file using mmap (fields default to NULL and -1 respectively, breaking) * Do PATH_INFO resolving and on disk path building in make_entry instead of in blog_index / blog_rss / blog_entry * entry_get_text: add function to mmap an entry's file into the structure * free_entry: also unmap file if present * make_index: Add function to build an array of entries reverse sorted by time * blog_index / blog_rss: * use make_index instead of scandir and make_blogpost_from_dirent * (blog_rss) use entry_get_text to pass the template the text of the entry. * template: * template_post_index_entry → template_index_entry (breaking) * template_post_single_entry → template_single_entry (breaking) * replace template_error_404() with generic template_error(status) * templates/simple.c: * Use xml library instead of printf * Use entry.text instead of opening the file in the template * include CSS if BLOG_CSS is set in config.h * document internal and public interfaces using doxygen * build process: * build object files individually * build process configuration in config.mk (breaking) * support templates in arbitrary locations * build default config.h if it's missing * add install phase * Rename target to sternenblog.cgi (breaking)
* chore(build): specify prerequisites, to target blog.cgisternenseemann2020-07-271-4/+5
|
* Added Makefilelukasepple2014-08-021-0/+10