git.iko.soy/typeable/pandoc
on 339fcbb help sign in
history ofMakefile
all commits
5387ebdAdded 'hsmarkdown' wrapper, designed to be used as a drop-in replacement for Markdown.pl. It calls pandoc with the options '--from markdown --to html --strict' and disallows other options. (Any command-line options will be interpreted as arguments.)fiddlosopher b9a3483Inserted a needed slash in the Makefile, after $(osx_pkg_name), which is the name of a directory!fiddlosopher 4ea1b2bMerged 'strict' branch from r324. This adds a '--strict' option to pandoc, which forces it to stay as close as possible to official Markdown syntax.fiddlosopher 7cd9db0Slight changes in website target: + history.html -> changelog.html + demo.html -> examples.html + Added title to changelog.html + Removed header div on html pages + Changed widths in cssfiddlosopher 369b995Make wrappers executable in the top-level directory, in case people want to try them in place without installing.fiddlosopher 3c9fd01+ Renamed web/demos.sh to mkdemos.sh + Added parameter for directory containing executables + Changed arithmetic statement for portability. + Modified Makefile accordingly.fiddlosopher 3491420+ Changed 'web2markdown' to 'html2markdown'.fiddlosopher 17837b3Added two more demo cases to website. Put a footnote in README for demonstration purposes.fiddlosopher 2d253caAdded a latex -> markdown case to demos.fiddlosopher 2933f9fAdded another demo case, with header and footer and css.fiddlosopher 5468e76Added "Demos" page to the website.fiddlosopher a1a30d6+ Removed the convenience symlinks (which don't work on Windows under Cygwin, due to Windows' lack of true symbolic links). + Modified the wrappers to use 'pandoc' instead of the symlinks. + Modified the Makefile to remove all references to the symlinks. + Removed code from Main.hs that made pandoc's behavior depend on the name of the calling program. + Added code to Main.hs that sets default reader and writer based on extensions of input and output filenames (if provided). (Thanks to roktas for the idea.) + Modified README and man pages accordingly. + Removed WINDOWS-README target from Makefile. It is no longer needed now that we don't have the symlinks.fiddlosopher a1539d9Added README-WINDOWS.html to windows package documentation.fiddlosopher 5dfab2c+ Updates to Makefile: - New win-pkg target to build Windows binary package. - Changed name on OSX package. - New RELNAME global variable contains release name, e.g. pandoc-0.3 - Mac dmg is now created in top-level directory, not .. + Updates to website: - Changed download links to point to Google Code downloads area. - Added section on Windows binary package.fiddlosopher 2deea09Pandoc package didn't contain 'pandoc' executable. This is because we're using "Simply expanded variables" and PROGS expands before EXECS. Put PROGS after EXECS to fix this bug. As an alternative solution, we could make PROGS -and possibly others- "recursively expanded" variables, but I tend to avoid using that flavour of variables.roktas 54a7700Changed osx-pkg target in Makefile to refer to COPYRIGHT instead of (obsolete) LICENSE.fiddlosopher d829c48Merged changes from branches/wrappers since r177. Summary of main changes: + Added -o/--output and -d/--debug options to pandoc. + Modified pandoc to behave differently depending on the name of the program. For example, if the program name is 'html2latex', the default reader will be html and the default writer latex. + Removed most of the old wrappers, replacing them with symlinks to pandoc. + Rewrote markdown2pdf and created a new wrapper web2markdown, with the functionality of the old html2markdown script. These new scripts exploit pandoc's -d option to avoid having to do complex command-line parsing. + Revised man pages and documentation appropriately.fiddlosopher aac442eRemoved TODO. ToDo list now maintained on the Wiki at pandoc's Google Code site. (Also in the repository: wiki/ToDo.wiki.)fiddlosopher 66da30cAdded 'clean' target to src/templates/Makefile, main Makefile's 'clean' calls it to clean out template-generated files.fiddlosopher 31a956bChanges to build process relating to r234. + Corrected dependencies in Makefiles to ensure that templates get filled when the relevant files are modified. + Changed template placeholders to @xxx@ instead of <xxx>, for consistency with our practice with the Cabal template. + Changed default font for RTF writer (this had been changed earlier, but in the target rather than the template!)fiddlosopher 4ab3eb3+ Small changes to Makefile for better handling of Windows executable. + Added windows executable to the website target.fiddlosopher ba16d6aMakefile now checks to see if we're running Cygwin/Windows; if we are, '.exe' extension is added to each executable in EXECS.fiddlosopher 1fdafb5Extract version number from src/Main.hs in cabalize and Makefile. The authoritative version number is now in src/Main.hs, with no duplication. (This seems a better solution than building Main.hs from a template.)fiddlosopher 426cbadMerge changes in branches/wrappers into trunk.roktas 8307734Using hardcoded executable paths in Makefile doesn't work. While GHC 6.6 Cabal builds executables in dist/build/$executable, older Cabal versions use dist/build/src. To cope with this situation: + Revert to old code which determines executable paths dynamically. + Create symlinks to the compiled executables in top directory. Make sure to not touch symlinks once they've been created. + As PROGS variable can now contain symlinks, determine the actual file during installation. + Replace EXECNAMES with EXECS, as the former became a redundant name due to these changes.roktas 8e5f3e6Fix a bug in 'uninstall-exec' target.roktas 668a485Changes to OSX packaging: + Use $(NAME) instead of hard-coded 'Pandoc' for package and dmg names + Create dmg in .. (like debs) + Modified website target to get dmg from ..fiddlosopher fa645eeUse compiled executables directly from their build directory, without copying them to the top directory.roktas caf7e1cFix a serious bug in Makefile. 'make' should recompile when a source file has been modified.roktas 05c2566Remove signatures (and emails!) from changelog on web page.fiddlosopher 30734c8+ Changes to osx/Welcome: - removed hardcoded references to /usr/local - added title + Minor changes to website build process.fiddlosopher 30405f3Revisions to website target: + added link for OSX package + minor fixesfiddlosopher 6c87b87Put all website commands into a subshell jail. If any command failed, we would end up with web_dest directory which would have to be removed manually for further attempts. If this looked ugly; as an alternative solution we could change 'website' target as follows:roktas cc14b53Changes for 'website': + Execute $(MAIN) in './' otherwise this would fail if $(MAIN) is not available in PATH. + Make echo off during file checking. + Copy $(deb_main) from parent directory.roktas da1cf6aChanged install.html to INSTALL.html in website; replaced a reference to README.html to INSTALL.html.fiddlosopher 1c9c3acAdded target for creation of website. 'web' directory contains source files for website, which is created in 'web/pandoc'.fiddlosopher fc08eb0Removed INSTALL.html from build-doc target.fiddlosopher 2b40ef5Fixes from last review: + Add markdown2pdf to %.pdf dependencies. + Make build-all target explicitly depend on build-program, instead of 'all' which might be changed in future. + Add build-program to osx-pkg-prep for the sake of explicitness. + Generate INSTALL.html in build-doc.roktas afd9237Attempt to fix a (long-standing) Makefile drawback which is documented in previous revisions as follows:roktas 7bbe87aFix a bug in variable substitution.roktas 24e56f3Older Cabal versions have no '--destdir' option. Detect the availability of this option and fallback to '--copy-prefix' (which is now deprecated, as of GHC 6.6).roktas 2d7043bRemove some code comments from previous commit.roktas 2066ec5More sanitizations in Makefile (needs testing): + Remove a bogus DOCS assignment line. + Cabal recreates pandoc executable by unnecessarily linking Main.o with library (it skips compiling *.hs files though). Since pandoc's time stamp is modified, it is copied from buildir to top directory, and also README.html is regenerated, each time a target which has a 'build' prerequisite is invoked. As a solution, now PHONY 'build' target depends on BUILDDIR/. + "THIS" variable has a confusing semantics and it is abusingly used in various targets. We in fact need it to specify package sub directories created during installation. Clarify this meaning by moving it to path variables section. + Create a new variable as MAIN which holds the main executable name. Sorry for my obsession to avoid simply using a magic "pandoc" name. :-) Modify all targets which (abusingly) refers to THIS and replace THIS with MAIN. Note that MAIN is derived from EXECS which in turn collects all executable names from Executable stanzas in cabal file. + As EXECS may hold more than one executable name, update EXECS target to reflect this semantic. + Rename BINS variable as PROGS and modify it so as to hold the names of all executables required to be installed. Remove bin_all local variable as PROGS can be used for the same purpose instead. + Modify DOCS variable so as to hold the names of all documents required to be installed. Remove doc_all local variable as DOCS can be used for the same purpose instead. + Remove DOCS target. README.html is already generated when needed. + Remove build-exec redundant prerequisite from osx_dest target. Make can find its way. + Set MAIN as the prerequisite of 'test' and 'test-markdown' to make things more clear.roktas 2d2914fSanitize Makefile: + Move $(BINS) target to a new PHONY 'build-exec' target. This should be used in all (non-build type) targets which refer BINS. Also, create a new 'build-program' target for user's convenience. + Update all targets so as to use build-exec (instead of BINS). + Use an explicit global DOCS variable which lists buildable documents; this makes our intention more clear. Also, for the sake of consistency, move BINS variable (which lists buildable executables) to a new section and create a redundant (for the moment, at least) EXECS variable. + Move all buildable target files in install-* targets to the related build-* targets. This mostly involves document files (e.g. README.hmtl). As a result, we now have a new build target 'build-doc' which builds main documents. This modification provides a clean separation between build and install type targets.roktas d3f5280Make osx-dmg target depend on $(osx_dmg_name), so that if the dmg file has already been built, it does not build it again.fiddlosopher 309a150Changes related to osx packaging: + Simplified osx-dmg target, which need not be built as root. + Made osx-pkg and osx-pkg-prep non-.PHONY, plus a few other minor changes to make the dependencies work correctly. + Removed \< from the sed regex in cabalize; this is not support in BSD sed. + Changed path information in osx/Welcome and message in uninstall-pandoc.fiddlosopher e478551Various changes in osx-* targets. + Exit 1 if permissions are not satisfied. + Make all targets PHONY. + Minor cosmetic fixes.roktas b14874fAdded uninstall-pandoc script to Mac OS X package. Added information about uninstalling to Welcome message.fiddlosopher 1f18bc8Changes to osx-pkg and osx-dmg targets.fiddlosopher c8bac7eImproved osx-dmg and osx-pkg targets in Makefile.fiddlosopher