Commit Graph

150 Commits

Author SHA1 Message Date
Werner Lemberg 392cf22f8a Another adjustment to header locations.
This change is a result of a discussion thread on freetype-devel

  http://lists.nongnu.org/archive/html/freetype-devel/2015-06/msg00041.html

Re-introduce the `freetype2' subdirectory for all FreeType header
files after installation, and rename the `freetype2' subdirectory in
the git repository to `freetype'.

* include/freetype2: Renamed to...
* include/freetype: This.

* CMakeLists.txt (PUBLIC_HEADERS, PUBLIC_CONFIG_HEADERS,
PRIVATE_HEADERS): Updated.
Update creation of `ftconfig.h'.
Install generated `ftconfig.h'.

* Jamfile (HDRMACRO, RefDoc), autogen.sh: Updated.

* builds/amiga/include/config/ftconfig.h, builds/freetype.mk
(PUBLIC_DIR), builds/symbian/bld.inf, builds/toplevel.mk (work),
builds/unix/freetype2.in: Updated.

* builds/unix/freetype-config.in: Updated.
* builds/unix/configure.raw: Don't check for `rmdir'.
* builds/unix/unix-def.in (DELDIR): Use `rm -rf', which is portable
according to the autoconf info manual.
* builds/unix/install.mk (install, uninstall,
distclean_project_unix): Update and simplify.

* builds/wince/*, builds/windows/*: Updated.

* devel/ft2build.h, include/ft2build.h: Updated.

* include/freetype2/config/ftheader.h,
include/freetype2/internal/ftserv.h,
include/freetype2/internal/internal.h: Update all header file
macros.

* src/tools/chktrcmp.py (TRACE_DEF_FILES): Updated.

* docs/*: Updated.
2015-06-26 06:48:00 +02:00
Werner Lemberg 8502c98b15 Fix Savannah bug #45097.
We no longer `pollute' the namespace of possible header file names;
instead we move `ft2build.h' up by one level so that it gets
installed in the default include directory (e.g.,
/usr/local/include).  After this commit, only `ft2build.h' stays in
the compiler's include path.

No visible changes for the user who follows the standard FreeType
header inclusion rules.

* include/*: Move to ...
* include/freetype2/*: This directory, except `ft2build.h'.

* CMakeLists.txt (PUBLIC_HEADERS, PUBLIC_CONFIG_HEADERS,
PRIVATE_HEADERS), Jamfile (HDRMACRO, RefDoc), autogen.sh: Updated.

* builds/amiga/include/config/ftconfig.h, builds/freetype.mk
(PUBLIC_DIR), builds/symbian/bld.inf, builds/toplevel.mk (work),
builds/unix/install.mk (install, uninstall),
builds/unix/freetype2.in: Updated.

* builds/unix/freetype-config.in: Updated.
Emit -I directory only if it is not `/usr/include'.

* builds/wince/*, builds/windows/*: Updated.

* devel/ft2build.h, include/ft2build.h: Updated.

* include/freetype2/config/ftheader.h,
include/freetype2/internal/ftserv.h,
include/freetype2/internal/internal.h: Update all header file
macros.

* src/tools/chktrcmp.py (TRACE_DEF_FILES): Updated.

* docs/*: Updated.
2015-06-22 06:35:23 +02:00
Werner Lemberg 366b2ea748 * src/tools/apinames.c (names_dump): Fix invalid reference.
Problem reported by Guzman Mosqueda, Jose R
<jose.r.guzman.mosqueda@intel.com>.
2015-05-28 10:58:40 +02:00
Werner Lemberg 772a5e5ddd Update links to Apple's TrueType specification. 2015-03-20 09:40:10 +01:00
Werner Lemberg 3e58779675 Minor copyright and e-mail address issues. 2015-03-11 08:48:15 +01:00
Werner Lemberg cb0f7b65a8 Fix automatic copyright updating.
* src/tools/update-copyright: Make scanning of `no-copyright'
actually work.

* src/tools/no-copyright: Don't include README in general.
2015-03-11 08:47:48 +01:00
Werner Lemberg 272e3cd077 [psaux, type1] Fix minor AFM issues.
* include/internal/t1types.h (AFM_KernPairRec): Make indices
unsigned.
Update users.
(AFM_FontInfoRec): Make element counters unsigned.
Update users.
* src/psaux/afmparse.h (AFM_ValueRec): Add union member for unsigned
int.

* src/psaux/afmparse.c (afm_parse_track_kern, afm_parse_kern_pairs):
Reject negative values for number of kerning elements.

* src/type1/t1afm.c, src/tools/test_afm.c: Updated.
2015-02-18 11:38:46 +01:00
Werner Lemberg f57fc59e01 Run `src/tools/update-copyright'. 2015-01-17 20:41:43 +01:00
Werner Lemberg 50be00d3b3 Add some tools to handle yearly copyright notice updates.
We are now following the GNU guidelines: A new release automatically
means that the copyright year of all affected files gets updated; it
is no longer used to track years of modification changes.

* src/tools/update-copyright-year: New Perl script.
* src/tools/update-copyright: New shell script that calls
`update-copyright-year' on all files.
* src/tools/no-copyright: Exceptions that should not be handled by
`update-copyright'
2015-01-17 20:38:31 +01:00
Werner Lemberg 36a4676136 Remove C-isms in Python code. 2014-12-22 03:31:32 +01:00
Werner Lemberg 0098d5502d Uppercase all hex digits for orthogonality. 2014-12-07 11:03:57 +01:00
Werner Lemberg 9870d6dacf */*: Decorate hex constants with `U' and `L' where appropriate. 2014-12-07 09:40:47 +01:00
Werner Lemberg ca1f5cc7e6 [docmaker] Always handle `<Order>' section elements.
Previously, those elements were handled only for sections present in
a `<Sections>' chapter element.

* src/tools/docmaker/content.py (ContentProcessor::finish):
Implement it.
2014-12-02 22:49:25 +01:00
Werner Lemberg ef6a352344 [docmaker] Properly handle empty rows in Synopsis.
* src/tools/docmaker/tohtml.py (HtmlFormatter::section_enter): Emit
`&nbsp;' for empty fields.
2014-12-02 21:16:59 +01:00
Werner Lemberg 0e96f05009 [docmaker] Thinko.
* src/tools/docmaker/content.py (DocBlock::get_markup_words_all):
Emit `/empty/' string for first element also.
2014-12-02 11:08:31 +01:00
Werner Lemberg 102d4a76ed [docmaker] Honour empty lines in `<Order>' section element.
This greatly improves the readability of the `Synopsis' links.

* src/tools/docmaker/content.py (DocBlock::get_markup_words_all):
Insert string `/empty/' between items.

* src/tools/docmaker/formatter.py (Formatter::section_dump): Make it
robust against nonexistent keys.

* src/tools/docmaker/tohtml.py (HtmlFormatter::section_enter): Emit
empty <td> elements for `/empty/'.
2014-12-02 10:27:40 +01:00
Werner Lemberg 2af25ac0f9 [docmaker] Ensure Python 3 compatibility.
* src/tools/docmaker/content.py (ContentProcessor::set_section,
ContentProcessor::finish): Replace `has_key' function with `in'
keyword.

* src/tools/docmaker/formatter.py (Formatter::__init__): Replace
sorting function with a key generator.
(Formatter::add_identifier): Replace `has_key' function with `in'
keyword.

* src/tools/docmaker/tohtml.py (HtmlFormatter::html_source_quote):
Replace `has_key' function with `in' keyword.
(HtmlFormatter::index_exit, HtmlFormatter::section_enter): Use
integer division.
s/<>/>/.

* src/tools/docmaker/utils.py: Import `itertools'.
(index_sort): Replaced by...
(index_key): ... this new key generator (doing exactly the same).
2014-12-02 08:38:57 +01:00
Werner Lemberg 80bfeb1c3b [docmaker] Don't output a block multiple times.
This bug was hidden by not processing all lines of `<Order>' blocks.

* src/tools/docmaker/formatter.py (Formatter::section_dump): Filter
out field names.
2014-12-01 10:07:52 +01:00
Werner Lemberg 0dbad7632b [docmaker] Use field values as HTML link targets where possible.
* src/tools/docmaker/tohtml.py (HtmlFormatter::make_block_url):
Accept second, optional argument to specify a name.
(HtmlFormatter::html_source_quote): Link to field ID if possible.
(HtmlFormatter::print_html_field_list): Emit `id' attribute.
2014-12-01 08:44:48 +01:00
Werner Lemberg 785b1d0892 [docmaker] Allow empty lines in `<Order>' blocks.
Before this patch, the suggested order of entries stopped at the
first empty line.

Obviously, nobody noticed that this problem caused a much reduced
set of links in the `Synopsis' sections; in particular, the
`<Order>' blocks contain a lot of entries that wouldn't be listed
otherwise...

* src/tools/docmaker/content.py (DocBlock::get_markup_words_all):
New function to iterate over all items.
(DocSection::process): Use it.
2014-11-30 22:16:34 +01:00
Werner Lemberg 16b3e62013 * src/tools/docmaker/sources.py (column) [Format 2]: Fix regexp.
After the single asterisk there must be no other immediately following
asterisk.
2014-11-30 20:58:27 +01:00
Werner Lemberg aaffbf85df Minor. 2014-11-29 23:26:46 +01:00
Werner Lemberg 434bc69573 * src/tools/docmaker/tohtml.py: Improve CSS for vertical spacing. 2014-11-29 23:12:55 +01:00
Werner Lemberg 51987eaf39 [docmaker] Improve HTML code for table of contents..
* src/toold/docmaker/tohtml.py: Introduce a new table class `toc',
together with proper CSS.
2014-11-29 22:19:29 +01:00
Werner Lemberg aa834ce580 [docmaker] Provide higher-level markup and simplify HTML.
* src/tools/docmaker/tohtml.py: Instead of using extraneous `<div>'
elements, use CSS descendants (of class `section') to format the
data.

Also remove reduntant <p> and <br> elements, replacing them with
proper CSS.

Globally reduce page width to 75%.

(block_header): Rename <div> class to `section'.
2014-11-29 20:08:29 +01:00
Werner Lemberg 3bb9702387 [docmaker] Add `top' links after blocks.
* src/tools/docmaker/tohtml.py (block_footer_middle): Implement it.
2014-11-29 16:12:37 +01:00
Werner Lemberg a31f971577 * src/tools/docmaker/tohtml.py: Improve CSS for fields.
Make fields align horizotnally relative to full line width.
2014-11-29 07:18:44 +01:00
Werner Lemberg 8f795118b8 * src/tools/docmaker/tohtml.py: Fix index and TOC templates.
This thinko was introduced 2014-11-27.
2014-11-29 06:49:15 +01:00
Werner Lemberg ba1ba0cade [docmaker] Format field lists with CSS.
This also simplifies the inserted HTML code.

* src/tools/docmaker/tohtml.py
(HtmlFormatter::print_html_field_list): Do it.
2014-11-28 22:04:14 +01:00
Werner Lemberg 46d4dc86e1 [docmaker] Replace empty `<td>' with CSS..
* src/tools/docmaker/tohtml.py (HtmlFormatter::section_enter): Do
it.
2014-11-28 05:49:56 +01:00
Werner Lemberg 984e07176c [docmaker] Replace some `<table>' tags with `<h4>' and `<div>'.
* src/tools/docmaker/tohtml.py (marker_*): Use `<h4>'.
(source_*): Use `<div>'.
(HtmlFormatter::block_enter): s/<h4>/<h3>/.
2014-11-28 05:33:58 +01:00
Werner Lemberg 7ea363402c * src/tools/docmaker/tohtml.py: Usee more CSS for index. 2014-11-27 19:38:31 +01:00
Werner Lemberg edcf817efa [docmaker] Replace `name' attribute of `<a>' with `id'.
* src/tools/docmaker/tohtml.py (HtmlFormatter::block_enter): Do it.
2014-11-27 19:28:48 +01:00
Werner Lemberg 26d699ed84 * src/tools/docmaker/tohtml.py: Remove remaining `width' attributes.
For `Index' and `TOC' links, we now simply use the `text-align' CSS
property of `<td>' to enforce flush-left and flush-right,
eliminating the hack with an empty, full-width `<td>' element
inbetween.

The change also enforces the same (smaller) size for all index and
TOC links.
2014-11-27 19:22:52 +01:00
Werner Lemberg dd3fee072c * src/tools/docmaker/tohtml.py: More HTML table refactoring.
Replace some `<table>' tags with `<div>' to simplify structure.

Move `bgcolor' attribute to CSS.

Replace most `width' attributes with CSS.  The remaining instances
(providing a similar effect as LaTeX's `\hfill' command) are removed
in a later patch.
2014-11-27 13:20:52 +01:00
Werner Lemberg 339d830efe [docmaker] Typos. 2014-11-27 12:03:17 +01:00
Werner Lemberg a5ad26afea * src/tools/docmaker/tohtml.py: Replace <font> with CSS. 2014-11-27 11:05:57 +01:00
Werner Lemberg ba67c61972 * src/tools/docmaker/tohtml.py: Center <table> with CSS. 2014-11-27 11:05:11 +01:00
Werner Lemberg 5594fa549d * src/tools/docmaker/tohtml.py: Replace `<center>' with `<div>'. 2014-11-27 11:04:18 +01:00
Werner Lemberg 433295ab6e Sort CSS entries. 2014-11-27 11:03:28 +01:00
Werner Lemberg 8585cf56c1 * src/tools/docmaker/tohtml.py: Remove redundant `<center>' tags.
This starts a series of commits into the direction of generating
valid HTML 5 code, especially using much more CSS.
2014-11-27 11:03:09 +01:00
Werner Lemberg c52882ab72 [docmaker] Produce better HTML code.
* src/tools/docmaker/tohtml.py: Always use double quotes for
attribute values.
(source_footer): Close `td' and `tr' groups.
2014-11-27 08:01:25 +01:00
Werner Lemberg 4e7f89e3d7 [docmaker] Cosmetics. 2014-11-27 07:00:10 +01:00
Werner Lemberg e8a5c33e9f * src/tools/docmaker/sources.py (re_bold, re_italic): Use
non-grouping parentheses.
* src/tools/docmaker/tohtml.py (HtmlFormatter::make_html_word):
Updated.
2014-11-27 06:48:37 +01:00
Werner Lemberg a7a4207d10 [docmaker] Formatting, copyright, improved documentation.
* src/tools/docmaker/*: No code changes besides trivial
modifications.
2014-11-24 06:44:45 +01:00
Werner Lemberg 181fd071ee [afblue.pl]: Minor improvements.
* src/tools/afblue.pl: Allow whitespace before comments.
Ignore whitespace in strings.
2014-04-15 16:47:05 +02:00
Werner Lemberg 6dce136937 Fix problems with perl 5.8.8 as distributed with current MinGW.
* src/tools/afblue.pl: Work-around for Perl bug #63402.
(string_re): Avoid `possessive quantifiers', which have been
introduced in Perl version 5.10.
2014-02-05 15:40:47 +01:00
Werner Lemberg 741f736662 Work-around for Perl bug #63402. 2014-02-05 14:51:51 +01:00
Werner Lemberg c46fa86bd5 [autofit] Fix Savannah bug #41138, part 1.
* src/tools/afblue.pl <Handling #endif>: Produce correct auxiliary
enumeration names for generated `#else'.

* src/autofit/afblue.h: Regenerated.
2014-01-08 08:45:40 +01:00
Werner Lemberg 991cbcce97 [autofit] Minor fixes for `afblue.pl'.
* src/tools/afblue.pl (aux_name): Don't use `reverse'.
<Handling #endif>: Use proper indentation for generated `#else'.

* src/autofit/afblue.h: Regenerated.
2014-01-05 13:24:56 +01:00