[GRASS5] Proposed freetype/configure patches

From a Mandrake developer I received the attached
patches (5.0.3/5.3, 5.7).

Can I apply them?

Markus

(attachments)

grass-5.0.3-configure-freetype-fix.patch (350 Bytes)
grass-57-freetype-includes-fix.patch (682 Bytes)

Markus Neteler wrote:

>From a Mandrake developer I received the attached
patches (5.0.3/5.3, 5.7).

Can I apply them?

-LOC_CHECK_INCLUDES(freetype/freetype.h,FreeType,$FTINC)
+LOC_CHECK_INCLUDES(ft2build.h,FreeType,$FTINC)

We changed from checking ft2build.h in 5.0.0 to freetype/freetype.h in
5.0.1, and we presumably did so for a reason.

Unless someone beats me to it, I'll try to find the commit message and
any emails relating to the change.

--
Glynn Clements <glynn.clements@virgin.net>

(cc Buchan)

On Mon, Jun 21, 2004 at 03:51:45PM +0100, Glynn Clements wrote:

Markus Neteler wrote:

> >From a Mandrake developer I received the attached
> patches (5.0.3/5.3, 5.7).
>
> Can I apply them?

> -LOC_CHECK_INCLUDES(freetype/freetype.h,FreeType,$FTINC)
> +LOC_CHECK_INCLUDES(ft2build.h,FreeType,$FTINC)

We changed from checking ft2build.h in 5.0.0 to freetype/freetype.h in
5.0.1, and we presumably did so for a reason.

Unless someone beats me to it, I'll try to find the commit message and
any emails relating to the change.

--
Glynn Clements <glynn.clements@virgin.net>

OK, here is the commit log:

http://grass.itc.it/pipermail/grass-commit/2002-September/006605.html

So it should be somewhere here:
http://grass.itc.it/pipermail/grass5/2002-September/author.html#start

Markus

Markus Neteler wrote:

> > >From a Mandrake developer I received the attached
> > patches (5.0.3/5.3, 5.7).
> >
> > Can I apply them?
>
> > -LOC_CHECK_INCLUDES(freetype/freetype.h,FreeType,$FTINC)
> > +LOC_CHECK_INCLUDES(ft2build.h,FreeType,$FTINC)
>
> We changed from checking ft2build.h in 5.0.0 to freetype/freetype.h in
> 5.0.1, and we presumably did so for a reason.
>
> Unless someone beats me to it, I'll try to find the commit message and
> any emails relating to the change.

OK, here is the commit log:

http://grass.itc.it/pipermail/grass-commit/2002-September/006605.html

So it should be somewhere here:
http://grass.itc.it/pipermail/grass5/2002-September/author.html#start

Nope; it turns out to have been a private email (from you):

From: Markus Neteler <neteler@itc.it>
To: Glynn Clements <glynn.clements@virgin.net>
Subject: Question on configure
Date: Tue, 24 Sep 2002 15:01:12 +0200
Message-ID: <20020924150112.G25861@itc.it>

to get configure accepting the freetype lib (Redhat 7.1)
I had to change:

cvs diff configure
Index: configure

RCS file: /grassrepository/grass/configure,v
retrieving revision 1.117
diff -r1.117 configure
10489c10489
< for ac_hdr in ft2build.h
---
> for ac_hdr in ./freetype/config/ftbuild.h

as ft2build.h does not exist on Redhat 7.1:

locate /freetype/config/ftbuild.h
/usr/include/freetype2/freetype/config/ftbuild.h

May I ask you to modify the configure[.in] if possible?

Currently, d.text.freetype/main.c does:

  #include <freetype/freetype.h>

So, that's what configure should be checking for. If the source code
was changed to include ft2build.h (and use the macros for including
the other headers), then changing the configure checks would make
sense.

--
Glynn Clements <glynn.clements@virgin.net>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Glynn Clements wrote:
| Markus Neteler wrote:
|
|>>>>From a Mandrake developer I received the attached
|>>>patches (5.0.3/5.3, 5.7).
|>>>
|>>>Can I apply them?
|>>
|>>>-LOC_CHECK_INCLUDES(freetype/freetype.h,FreeType,$FTINC)
|>>>+LOC_CHECK_INCLUDES(ft2build.h,FreeType,$FTINC)
|>>
|>>We changed from checking ft2build.h in 5.0.0 to freetype/freetype.h in
|>>5.0.1, and we presumably did so for a reason.
|>>
|>>Unless someone beats me to it, I'll try to find the commit message and
|>>any emails relating to the change.
|>
|>OK, here is the commit log:
|>
|> http://grass.itc.it/pipermail/grass-commit/2002-September/006605.html
|>
|>So it should be somewhere here:
|> http://grass.itc.it/pipermail/grass5/2002-September/author.html#start
|
| Nope; it turns out to have been a private email (from you):
|
|>From: Markus Neteler <neteler@itc.it>
|>To: Glynn Clements <glynn.clements@virgin.net>
|>Subject: Question on configure
|>Date: Tue, 24 Sep 2002 15:01:12 +0200
|>Message-ID: <20020924150112.G25861@itc.it>
|
|>to get configure accepting the freetype lib (Redhat 7.1)
|>I had to change:
|>
|>cvs diff configure
|>Index: configure
|>===================================================================
|>RCS file: /grassrepository/grass/configure,v
|>retrieving revision 1.117
|>diff -r1.117 configure
|>10489c10489
|>< for ac_hdr in ft2build.h
|>---
|>
|>>for ac_hdr in ./freetype/config/ftbuild.h
|>
|>as ft2build.h does not exist on Redhat 7.1:
|>
|>locate /freetype/config/ftbuild.h
|>/usr/include/freetype2/freetype/config/ftbuild.h
|>
|>May I ask you to modify the configure[.in] if possible?
|
| Currently, d.text.freetype/main.c does:
|
| #include <freetype/freetype.h>
|
| So, that's what configure should be checking for. If the source code
| was changed to include ft2build.h (and use the macros for including
| the other headers), then changing the configure checks would make
| sense.
|

I sent Markus two patches, one for grass-5.{0,3}, which just change the
configure.in, the one for grass-5.7 added an #include ft2build.h (but it
was incomplete, it needs to use the macro to get the freetype header).

The problem is that with freetype-2.1.8 and later, freetype.h now has:

#ifndef FT_FREETYPE_H
#error "`ft2build.h' hasn't been included yet!"
#error "Please always use macros to include FreeType header files."
#error "Example:"
#error " #include <ft2build.h>"
#error " #include FT_FREETYPE_H"
#endif

So, configure in grass-5.{0,3} fails, even though nothing seems to
include the header, and compilation fails (if configure succeeded) in
d.text.freetype.

Regards,
Buchan

- --
Buchan Milne Senior Support Technician
Obsidian Systems http://www.obsidian.co.za
B.Eng RHCE (803004789010797)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFA1+tNrJK6UGDSBKcRAoXyAKCj65WwwBDWhP/mEFD9eAlVQsDBjgCbBy2K
7cLNl+TZkW4IqZvTWQi7tSw=
=fiQp
-----END PGP SIGNATURE-----

On Mon, Jun 21, 2004 at 06:34:44PM +0100, Glynn Clements wrote:

Markus Neteler wrote:

> > > >From a Mandrake developer I received the attached
> > > patches (5.0.3/5.3, 5.7).
> > >
> > > Can I apply them?
> >
> > > -LOC_CHECK_INCLUDES(freetype/freetype.h,FreeType,$FTINC)
> > > +LOC_CHECK_INCLUDES(ft2build.h,FreeType,$FTINC)
> >
> > We changed from checking ft2build.h in 5.0.0 to freetype/freetype.h in
> > 5.0.1, and we presumably did so for a reason.
> >
> > Unless someone beats me to it, I'll try to find the commit message and
> > any emails relating to the change.
>
> OK, here is the commit log:
>
> http://grass.itc.it/pipermail/grass-commit/2002-September/006605.html
>
> So it should be somewhere here:
> http://grass.itc.it/pipermail/grass5/2002-September/author.html#start

Nope; it turns out to have been a private email (from you):

> From: Markus Neteler <neteler@itc.it>
> To: Glynn Clements <glynn.clements@virgin.net>
> Subject: Question on configure
> Date: Tue, 24 Sep 2002 15:01:12 +0200
> Message-ID: <20020924150112.G25861@itc.it>

> to get configure accepting the freetype lib (Redhat 7.1)
> I had to change:
>
> cvs diff configure
> Index: configure
> ===================================================================
> RCS file: /grassrepository/grass/configure,v
> retrieving revision 1.117
> diff -r1.117 configure
> 10489c10489
> < for ac_hdr in ft2build.h
> ---
> > for ac_hdr in ./freetype/config/ftbuild.h
>
>
> as ft2build.h does not exist on Redhat 7.1:
>
> locate /freetype/config/ftbuild.h
> /usr/include/freetype2/freetype/config/ftbuild.h
>
> May I ask you to modify the configure[.in] if possible?

Currently, d.text.freetype/main.c does:

  #include <freetype/freetype.h>

So, that's what configure should be checking for. If the source code
was changed to include ft2build.h (and use the macros for including
the other headers), then changing the configure checks would make
sense.

Yesterday I have updated thei mentioned RH7 box to:
rpm -ql freetype-devel-2.0.9-2 | grep ft2build.h
/usr/include/ft2build.h

Yes, the source code is proposed to be changed.

Markus

On Tue, Jun 22, 2004 at 10:18:21AM +0200, Buchan Milne wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Glynn Clements wrote:
| Markus Neteler wrote:
|
|
|>>>>From a Mandrake developer I received the attached
|>>>patches (5.0.3/5.3, 5.7).
|>>>
|>>>Can I apply them?
|>>
|>>>-LOC_CHECK_INCLUDES(freetype/freetype.h,FreeType,$FTINC)
|>>>+LOC_CHECK_INCLUDES(ft2build.h,FreeType,$FTINC)
|>>
|>>We changed from checking ft2build.h in 5.0.0 to freetype/freetype.h in
|>>5.0.1, and we presumably did so for a reason.
|>>
|>>Unless someone beats me to it, I'll try to find the commit message and
|>>any emails relating to the change.
|>
|>OK, here is the commit log:
|>
|> http://grass.itc.it/pipermail/grass-commit/2002-September/006605.html
|>
|>So it should be somewhere here:
|> http://grass.itc.it/pipermail/grass5/2002-September/author.html#start
|
|
| Nope; it turns out to have been a private email (from you):
|
|
|>From: Markus Neteler <neteler@itc.it>
|>To: Glynn Clements <glynn.clements@virgin.net>
|>Subject: Question on configure
|>Date: Tue, 24 Sep 2002 15:01:12 +0200
|>Message-ID: <20020924150112.G25861@itc.it>
|
|
|>to get configure accepting the freetype lib (Redhat 7.1)
|>I had to change:
|>
|>cvs diff configure
|>Index: configure
|>===================================================================
|>RCS file: /grassrepository/grass/configure,v
|>retrieving revision 1.117
|>diff -r1.117 configure
|>10489c10489
|>< for ac_hdr in ft2build.h
|>---
|>
|>>for ac_hdr in ./freetype/config/ftbuild.h
|>
|>
|>as ft2build.h does not exist on Redhat 7.1:
|>
|>locate /freetype/config/ftbuild.h
|>/usr/include/freetype2/freetype/config/ftbuild.h
|>
|>May I ask you to modify the configure[.in] if possible?
|
|
| Currently, d.text.freetype/main.c does:
|
| #include <freetype/freetype.h>
|
| So, that's what configure should be checking for. If the source code
| was changed to include ft2build.h (and use the macros for including
| the other headers), then changing the configure checks would make
| sense.
|

I sent Markus two patches, one for grass-5.{0,3}, which just change the
configure.in, the one for grass-5.7 added an #include ft2build.h (but it
was incomplete, it needs to use the macro to get the freetype header).

The problem is that with freetype-2.1.8 and later, freetype.h now has:

#ifndef FT_FREETYPE_H
#error "`ft2build.h' hasn't been included yet!"
#error "Please always use macros to include FreeType header files."
#error "Example:"
#error " #include <ft2build.h>"
#error " #include FT_FREETYPE_H"
#endif

So, configure in grass-5.{0,3} fails, even though nothing seems to
include the header, and compilation fails (if configure succeeded) in
d.text.freetype.

I have applied the patches to 5.3-CVS and 5.7-CVS.

Markus