freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft-devel] Configuring for alternative build environments


From: Del Merritt
Subject: Re: [ft-devel] Configuring for alternative build environments
Date: Fri, 30 Nov 2012 08:40:46 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0

On 11/30/2012 07:46 AM, Werner LEMBERG wrote:
The problem is that I have a customized version of ftoption.h.
According to CUSTOMIZE, "Just put your custom `ftoption.h' file into
the objects directory".  When I do this sequence:

    $ cd ~/work
    $ cp jni-ftoption.h ~/work/ft2-jni/ftoption.h
    $ cd ~/work/ft2-jni
    $ ~/ft2/freetype2/configure CFLAGS=-fPIC
    $ make

My customized version of ftoption.h disappears!  Oops.
This is a bug.  I've just fixed it in the git repository.  Thanks for
the report, and please retry!

Thanks. I happen to have worked around this for now, but I will try to hook up to the repository at some point.

Related: CUSTOMIZE seems silent on the handling of modules.cfg in
this scenario of building outside of the FT source tree.
Can you suggest a patch to CUSTOMIZE?

Here's the suggestion, with a bonus tweak to INSTALL.CROSS.

-Del

------ patches with diff -Naur -----

--- freetype-2.4.10/docs/CUSTOMIZE    2009-03-14 09:45:26.000000000 -0400
+++ freetype-2.4.10-dm/docs/CUSTOMIZE    2012-11-30 08:32:27.234734059 -0500
@@ -31,6 +31,10 @@
   make  uses `modules.cfg'  to  generate `ftmodule.h'  (in the object
   directory).

+  If you build FreeType in a directory separate from the source files,
+  put your customized modules.cfg in that directory; that way you can
+  keep the source files "clean".
+
   If  you don't  use  GNU make  you  have to  manually  edit the file
   `include/freetype/config/ftmodule.h'  (which is  *not* used  with if
   compiled with GNU make) to  add or remove the drivers and components
@@ -77,10 +81,12 @@

     [This is actually a combination of method 2 and 3.]

-    Just put your custom  `ftoption.h' file into the objects directory
-    (normally  `<topdir>/objs'),  which  GNU  make  prefers over  the
-    standard location.   No action is needed  for `ftmodule.h' because
-    it is generated automatically in the objects directory.
+    Just put your custom `ftoption.h' file into the objects directory
+    (normally `<topdir>/objs' if you build in the source tree, or the
+    directory where you invoke configure if you build in a separate
+    directory), which GNU make prefers over the standard location. No
+    action is needed for `ftmodule.h' because it is generated
+    automatically in the objects directory.


   2. Using the C include path

--- freetype-2.4.10/docs/INSTALL.CROSS 2009-03-14 09:45:26.000000000 -0400 +++ freetype-2.4.10-dm/docs/INSTALL.CROSS 2012-11-30 08:34:17.606736132 -0500
@@ -44,11 +44,11 @@
       the option  pair `--host=' and `--target='.  This  is broken and
       doesn't work.  Similarly, an explicit CC specification like

-        env CC=mips-ip22-linux-gcc ./configure
+        env CC=mips-ip22-linux-gcc ./configure                 # BAD

       or

-        env CC=/usr/local/mips-ip22-linux/bin/gcc ./configure
+        env CC=/usr/local/mips-ip22-linux/bin/gcc ./configure  # BAD

       doesn't   work  either;  such   a  configuration   confuses the
       `configure' script while  trying to find the cross  and native C





reply via email to

[Prev in Thread] Current Thread [Next in Thread]