git.iko.soy/typeable/pandoc
on master help sign in
Modifications to create a nice ChangeLog.

+ Add new file 'gnuify-changelog.pl' grabbed and adapted from subversion distribution. + Add 'ChangeLog' target to create/update ChangeLog. + Update current ChangeLog. git-svn-id: https://pandoc.googlecode.com/svn/trunk@44 788f1e2b-df1e-0410-8736-df70ead52e1b

commit93fe9eecc442eb9168f22b4af30c57868717e0e6 authorroktas <roktas@788f1e2b-df1e-0410-8736-df70ead52e1b> dateMon 30 Oct 2006, 12:10 (20 years ago) parentbbae8ad
3 files changed+358−1
ChangeLog+271−1 Makefile+3 gnuify-changelog.pl+84
ChangeLog+271−1
@@ -1 +1,271 @@
1−Please see changelog.Debian (debian/changelog in source tree).
1+2006-10-30 Recai Oktaş <roktas@debian.org>
2+
3+ Really fix cabal version detection.
4+
5+2006-10-30 Recai Oktaş <roktas@debian.org>
6+
7+ Add pandoc executable to process rules as a dependency. Make osx_dest,
8+ osx-pkg distinction more clear.
9+
10+2006-10-30 Recai Oktaş <roktas@debian.org>
11+
12+ Parameterise "osx-pkg".
13+
14+2006-10-30 Recai Oktaş <roktas@debian.org>
15+
16+ Add a 'osx-pkg' target for the creation of a Mac OSX® package (using
17+ PackageMaker.App). This target recursively uses 'install-program'
18+ target to populate OSX package directory tree.
19+
20+2006-10-30 Recai Oktaş <roktas@debian.org>
21+
22+ * cabalize: fix cabal version detection by using a bloody hack.
23+ * Makefile:
24+ + Make 'uninstall-all' depends on 'uninstall-exec'.
25+ + Make the default target 'all' depends on $(BINS). Now, invoking
26+ a plain 'make' builds and creates pandoc in the top directory.
27+
28+2006-10-29 John MacFarlane <jgm@berkeley.edu>
29+
30+ Bug fixes to make_osx_pkg_dirs.
31+
32+2006-10-29 John MacFarlane <jgm@berkeley.edu>
33+
34+ Added a script to make prepare directories for creation of a
35+ Mac OSX package (using PackageMaker.app).
36+
37+2006-10-29 John MacFarlane <jgm@berkeley.edu>
38+
39+ * Extracted installation instructions from README into a separate file,
40+ INSTALL. Reason: Only those who install from source will need the
41+ information in INSTALL, so it does not need to be included in user
42+ documentation. Indeed, it might confuse people who install Pandoc by some
43+ other method.
44+ * Minor changes in README (using "Pandoc" as a generic name for the
45+ system, "'pandoc'" as a name for the executable).
46+
47+2006-10-29 John MacFarlane <jgm@berkeley.edu>
48+
49+ Changed date on README.
50+
51+2006-10-29 John MacFarlane <jgm@berkeley.edu>
52+
53+ Added a comma in README.
54+
55+2006-10-29 Recai Oktaş <roktas@debian.org>
56+
57+ Remove 'install-lib', it causes too much trouble which needs to be dealed
58+ in ugly ways.
59+ + Now, we have 'install-program' and 'install-all' targets. The former
60+ installs only program and user documents, while the latter installs
61+ everything: program, user documents, library files and library documents.
62+ + Behaviour of 'install' target hasn't changed, it calls 'install-program'.
63+ + Update README accordingly.
64+ + Implement missing uninstall-* targets (including 'uninstall-all' and
65+ 'uninstall-program' for the new targets).
66+ + Call 'install-program' in debian/rules explicitly to prevent confusions.
67+
68+2006-10-29 John MacFarlane <jgm@berkeley.edu>
69+
70+ Changes to RTF writer:
71+ + use Helvetica instead of Times New Roman as default font
72+ + specify \f0 in every \pard; otherwise font sizes are not registered properly
73+ + modify test of RTF writer accordingly
74+
75+2006-10-29 Recai Oktaş <roktas@debian.org>
76+
77+ Portability fix. Remove rmdir(1)'s '--ignore-fail-on-non-empty' option, as
78+ it is unsupported in BSD version. Note that the relevant line has already
79+ started with a '-' which means that make(1) will ignore any error.
80+
81+2006-10-28 John MacFarlane <jgm@berkeley.edu>
82+
83+ + Changed debian/copyright to reflect new website location.
84+
85+2006-10-28 Recai Oktaş <roktas@debian.org>
86+
87+ Remove ghc66-branch to reduce clutter.
88+
89+2006-10-28 Recai Oktaş <roktas@debian.org>
90+
91+ Merge trunk with ghc66-branch.
92+
93+2006-10-28 Recai Oktaş <roktas@debian.org>
94+
95+ Tag current trunk as pandoc-0.21.
96+
97+2006-10-28 Recai Oktaş <roktas@debian.org>
98+
99+ Portability fixes:
100+ + '+' meta character apparently doesn't work with BSD's sed (without using
101+ an extra option). Just removing this character should be sufficient, as
102+ we have now used an unquoted variable at the problematic sed line (see
103+ the previous commit) and there is no extra space to remove.
104+ + '-D' option of BSD's install(1) doesn't work as expected. Modify code to
105+ not use this option at all.
106+
107+2006-10-28 Recai Oktaş <roktas@debian.org>
108+
109+ Unquote a variable in cabalize to have the problematic leading and trailing
110+ spaces removed in shell expansion.
111+
112+2006-10-28 John MacFarlane <jgm@berkeley.edu>
113+
114+ Acknowledge roktas's contributions in README.
115+
116+2006-10-28 John MacFarlane <jgm@berkeley.edu>
117+
118+ + fixed html2markdown usage message, in which w3m occured twice
119+ + added usage documentation to beginning of fillTemplates.pl
120+
121+2006-10-27 Recai Oktaş <roktas@debian.org>
122+
123+ Merge ghc66-branch with the latest changes in trunk.
124+
125+2006-10-27 Recai Oktaş <roktas@debian.org>
126+
127+ Use @HS_SOURCE_DIRS@ in substitution.
128+
129+2006-10-27 Recai Oktaş <roktas@debian.org>
130+
131+ Handle 'Hs-Source-Dir[s]*' option in cabalize to get rid of warnings.
132+
133+2006-10-27 Recai Oktaş <roktas@debian.org>
134+
135+ Minor corrections.
136+
137+2006-10-27 Recai Oktaş <roktas@debian.org>
138+
139+ Add "-o | --output" option to markdown2pdf, update man file.
140+
141+2006-10-27 John MacFarlane <jgm@berkeley.edu>
142+
143+ Wording changes in man files.
144+
145+2006-10-27 Recai Oktaş <roktas@debian.org>
146+
147+ Merge ghc66-branch with trunk. Just a future note for this operation:
148+ + Do an 'svn log' at the top of the repository.
149+ + Observe that we had created this branch at revision 6.
150+ + Now, chdir to ghc66-branch wc and merge all changes from revision 6
151+ to HEAD:
152+ svn merge -r6:HEAD https://pandoc.googlecode.com/svn/trunk
153+ + Make sure that we have no conflicts and commit all changes (as I'm
154+ doing right now).
155+
156+2006-10-27 Recai Oktaş <roktas@debian.org>
157+
158+ Cleanup cabalize script.
159+
160+2006-10-27 John MacFarlane <jgm@berkeley.edu>
161+
162+ Minor wording change in README.
163+
164+2006-10-27 John MacFarlane <jgm@berkeley.edu>
165+
166+ Modified package descriptions in debian/control.
167+
168+2006-10-27 John MacFarlane <jgm@berkeley.edu>
169+
170+ Give full download URL in debian/copyright.
171+
172+2006-10-27 John MacFarlane <jgm@berkeley.edu>
173+
174+ Fixed jgm's email address in debian changelog.
175+
176+2006-10-27 John MacFarlane <jgm@berkeley.edu>
177+
178+ Minor corrections and improvements to README.
179+
180+2006-10-27 Recai Oktaş <roktas@debian.org>
181+
182+ Replace awk with sed in cabalize.
183+
184+2006-10-25 Recai Oktaş <roktas@debian.org>
185+
186+ * Revert lib/executable build separation change. Unfortunately previously
187+ explained method creates '*.{o,hi}' files in src tree which I've just
188+ noticed. As this "twice build' issue is a regression from GHC 6.4, I
189+ strongly believe that it's a bug or a wrong implementation. Let's leave
190+ this issue for the moment.
191+
192+2006-10-25 Recai Oktaş <roktas@debian.org>
193+
194+ Preliminary work for GHC 6.6.
195+ * Improve build time configuration.
196+ + New file 'Pandoc.cabal.in' to create Pandoc.cabal by preprocessing it
197+ at build time. Remove Pandoc.cabal.
198+ + New file 'cabalize' to preprocess Pandoc.cabal.in. This script detects
199+ GHC version and setup things accordingly. Following is the excerpt
200+ from GHC 6.6 anouncement:
201+ - The Text.Html and Text.Html.BlockTable modules have now been removed,
202+ with the new html and xhtml packages providing replacements.
203+ - The Text.Regex and Text.Regex.Posix modules have been removed.
204+ Instead, use the new regex-compat package for a drop-in Text.Regex
205+ replacement, or the new library in the new regex-posix package.
206+ Now, for GHC 6.6, we have to list 'regex-compat' and 'html' modules in
207+ Build-Depends; and for GHC 6.4, we have to omit them since they already
208+ exist in base.
209+ + Remove 'configure' and 'Pandoc.buildinfo.in' as they are replaced by
210+ 'cabalize' and 'Pandoc.cabal.in'.
211+ + Simplify 'Setup.hs'.
212+ * Compile pandoc executable separately for the reasons depicted below;
213+ modify Makefile, debian/rules and Pandoc.cabal accordingly (the latter
214+ does no more have an Executable section):
215+ + New cabal (unfortunately) compiles all the library files _twice_; once
216+ when building library, and twice when building pandoc itself. Second
217+ compilation is unnecessary since we have the library already compiled
218+ and just statically linking Main.o should have been sufficient. This
219+ is a regression from GHC 6.4 (it doesn't behave this way). As a
220+ solution for this problem, we now compile Main.hs separately and
221+ _statically_ link Main.o with dist/build/*.a.
222+ + Separating the program binary build from library build simplifies both
223+ the Makefile and debian/rules.
224+ Note that, for the upcoming Cabal versions it is planned to use different
225+ cabal files for libraries and executables. So (perhaps in GHC 6.8) we'll
226+ probably have to change this code again.
227+ * Simplify some parts of Makefile and debian/rules by exploiting the lib vs
228+ executable build separation.
229+ * Add libghc6-html-dev to package Depends. This is a new package in Debian
230+ package archive and it includes the 'html' module which is no more
231+ available in ghc6 package. Due to this change, 'deb' target in Makefile
232+ won't work in older Debian systems having only ghc 6.4. But as ghc <=6.4
233+ support will be dropped in Etch, this will hardly become an issue.
234+ * Increment pandoc version for later changes. Note that, we have to
235+ increment Debian package version whenever we made a change, but maybe we
236+ should keep the major version number in Pandoc.cabal and just increment a
237+ minor version in debian/changelog (e.g. 0.2 in Pandoc.cabal, 0.2x in
238+ debian/changelog).
239+
240+2006-10-25 Recai Oktaş <roktas@debian.org>
241+
242+ Create branch for GHC 6.6 transition.
243+
244+2006-10-20 Recai Oktaş <roktas@debian.org>
245+
246+ * Fix man files installation so that we really ignore .svn directories.
247+ * Remove $datadir/doc/pandoc on uninstall-doc. Only this directory is
248+ removed since it's a cruft directory due to its name. I couldn't find
249+ a reliable method to remove other directories created on installation.
250+ * Use fakeroot when invoking dpkg-buildpackage. Improve warnings in
251+ 'deb' target.
252+
253+2006-10-20 John MacFarlane <jgm@berkeley.edu>
254+
255+ Added markdown2html to bin_all.
256+
257+2006-10-18 Recai Oktaş <roktas@debian.org>
258+
259+ As we are using subversion, ignore '.svn' directories when building debs.
260+
261+2006-10-17 John MacFarlane <jgm@berkeley.edu>
262+
263+ initial import
264+
265+2006-10-03
266+
267+ Initial directory structure.
268+
269+;; Local Variables:
270+;; coding: utf-8
271+;; End:
Makefile+3
@@ -197,6 +197,9 @@ tags: $(src_all)
197197 cd $(SRCDIR) && hasktags -c $(src_all:$(SRCDIR)/%=%); \
198198 LC_ALL=C sort tags >tags.sorted; mv tags.sorted tags
199199
200+ChangeLog: ../.svn/entries gnuify-changelog.pl
201+ svn log .. | sed 's/(no author)//' | ./gnuify-changelog.pl >$@
202+
200203deb: debian
201204 [ -x /usr/bin/fakeroot ] || { \
202205 echo "*** Please install fakeroot package. ***"; \
gnuify-changelog.plnew file+84
@@ -0,0 +1,84 @@
1+#!/usr/bin/perl -w
2+
3+# a script to munge the output of 'svn log' into something approaching the
4+# style of a GNU ChangeLog.
5+#
6+# to use this, just fill in the 'hackers' hash with the usernames and
7+# name/emails of the people who work on your project, go to the top level
8+# of your working copy, and run:
9+#
10+# $ svn log | /path/to/gnuify-changelog.pl > ChangeLog
11+
12+require 5.0;
13+use strict;
14+
15+my %hackers = (
16+ "fiddlosopher" => 'John MacFarlane <jgm@berkeley.edu>',
17+ "jgm" => 'John MacFarlane <jgm@berkeley.edu>',
18+ "roktas" => 'Recai Oktaş <roktas@debian.org>',
19+);
20+
21+my $parse_next_line = 0;
22+my $last_line_empty = 0;
23+my $last_rev = "";
24+
25+while (my $entry = <>) {
26+
27+ # Axe windows style line endings, since we should try to be consistent, and
28+ # the repos has both styles in its log entries
29+ $entry =~ s/\r\n$/\n/;
30+
31+ # Remove trailing whitespace
32+ $entry =~ s/\s+$/\n/;
33+
34+ my $this_line_empty = $entry eq "\n";
35+
36+ # Avoid duplicate empty lines
37+ next if $this_line_empty and $last_line_empty;
38+
39+ # Don't fail on valid dash-only lines
40+ if ($entry =~ /^-+$/ and length($entry) >= 72) {
41+
42+ # We're at the start of a log entry, so we need to parse the next line
43+ $parse_next_line = 1;
44+
45+ # Check to see if the final line of the commit message was blank,
46+ # if not insert one
47+ print "\n" if $last_rev ne "" and !$last_line_empty;
48+
49+ } elsif ($parse_next_line) {
50+
51+ # Transform from svn style to GNU style
52+ $parse_next_line = 0;
53+
54+ my @parts = split (/ /, $entry);
55+ $last_rev = $parts[0];
56+ my $hacker = $parts[2];
57+ my $tstamp = $parts[4];
58+
59+ # Use alias if we can't resolve to name, email
60+ $hacker = $hackers{$hacker} if defined $hackers{$hacker};
61+
62+ printf "%s %s\n", $tstamp, $hacker;
63+
64+ } elsif ($this_line_empty) {
65+
66+ print "\n";
67+
68+ } else {
69+
70+ print "\t$entry";
71+
72+ }
73+
74+ $last_line_empty = $this_line_empty;
75+}
76+
77+# As a HERE doc so it also sets the final changelog's coding
78+print <<LOCAL;
79+;; Local Variables:
80+;; coding: utf-8
81+;; End:
82+LOCAL
83+
84+1;