Opened 15 years ago

Closed 12 years ago

Last modified 12 years ago

#2949 closed bug (fixed)

Missing freetype2 headers, the freetype-config tool and its pkg-config files are missing.

Reported by: scottmc Owned by: korli
Priority: normal Milestone: R1
Component: - General Version: R1/Development
Keywords: Cc: planche2k@…
Blocked By: Blocking: #3167
Platform: All

Description

Splitting this off from #1739 as it grew from the discussion. Freetype2 is part of Haiku, but the freetype2 headers, the freetype-config tool and its pkg-config files are missing. This makes it difficult to port things to Haiku that rely on the system having those in place. They don't need to be part of Haiku, but should at least be available as an optional package or part of the development package.

Attachments (1)

freetype2.pc (283 bytes ) - added by michaelvoliveira 13 years ago.

Download all attachments as: .zip

Change History (29)

comment:1 by andreasf, 15 years ago

Cc: andreas.faerber@… added

comment:2 by scottmc, 15 years ago

This looks to be partially fixed in hrev28570, but still need the the config tool and pkg-config to be added.

comment:3 by anevilyak, 15 years ago

Blocking: 3167 added

(In #3167) Thanks for the note!

comment:4 by scottmc, 15 years ago

I've built and posted a freetype-2.3.7 binary for Haiku over on HaikuPorts, this package includes thee freetype2 headers, freetype-config tool and pkg-config files. So this could either be added as an optional package or the files can be pulled out of the binary zip and put into svn where needed. Once that is done this ticket can be closed out.

comment:5 by korli, 15 years ago

It's just the config tool and pkg-config should be tuned with /boot/develop/headers and /boot/develop/lib

comment:6 by scottmc, 15 years ago

I've taken another look at this one and seems using --libdir=/boot/develop/headers/3rdparty during ./configure does the trick. http://ports.haiku-files.org/wiki/media-libs/freetype/2.3.9/1

in reply to:  6 comment:7 by bonefish, 15 years ago

Replying to scottmc:

I've taken another look at this one and seems using --libdir=/boot/develop/headers/3rdparty during ./configure does the trick. http://ports.haiku-files.org/wiki/media-libs/freetype/2.3.9/1

Maybe that's different for freetype, but usually "--libdir" specifies the installation directory for libraries.

in reply to:  6 comment:8 by korli, 15 years ago

Replying to scottmc:

I've taken another look at this one and seems using --libdir=/boot/develop/headers/3rdparty during ./configure does the trick. http://ports.haiku-files.org/wiki/media-libs/freetype/2.3.9/1

bonefish is right, you might try using --includedir=/boot/develop/headers/3rdparty instead.

comment:9 by scottmc, 15 years ago

corrected.. i've updated the haikuports portlog entry to reflect this.

comment:10 by korli, 15 years ago

I added freetype-config in hrev30904. Should we use /boot/develop/abi/current for the prefix directory to be generic ?

in reply to:  10 ; comment:11 by bonefish, 15 years ago

Replying to korli:

I added freetype-config in hrev30904. Should we use /boot/develop/abi/current for the prefix directory to be generic ?

Nope, that isn't a prefix path, anyway.

in reply to:  11 ; comment:12 by korli, 15 years ago

Replying to bonefish:

Replying to korli:

I added freetype-config in hrev30904. Should we use /boot/develop/abi/current for the prefix directory to be generic ?

Nope, that isn't a prefix path, anyway.

Libs reside in /boot/develop/lib/x86/. Should we then customize the script with the arch ?

in reply to:  12 ; comment:13 by bonefish, 15 years ago

Replying to korli:

Replying to bonefish:

Replying to korli:

I added freetype-config in hrev30904. Should we use /boot/develop/abi/current for the prefix directory to be generic ?

Nope, that isn't a prefix path, anyway.

Libs reside in /boot/develop/lib/x86/. Should we then customize the script with the arch ?

I'm not quite sure, what the script is supposed to return. If it is the path for the linker, it should be /boot/develop/lib/x86 (for x86) or more generally /boot/develop/abi/current/lib. If it is the path where the library is located at runtime, it would be /system/lib.

Other then that, I think the prefix in the script is incorrect anyway, since with don't install freetype in /boot/common, but in /system.

in reply to:  13 comment:14 by korli, 15 years ago

Replying to bonefish:

Libs reside in /boot/develop/lib/x86/. Should we then customize the script with the arch ?

I'm not quite sure, what the script is supposed to return. If it is the path for the linker, it should be /boot/develop/lib/x86 (for x86) or more generally /boot/develop/abi/current/lib. If it is the path where the library is located at runtime, it would be /system/lib.

When used with --libs, it's supposed to return how to link : -L/boot/develop/lib/x86 -lfreetype -lz For the time being, we could use /boot/develop/abi/current/lib then.

Other then that, I think the prefix in the script is incorrect anyway, since with don't install freetype in /boot/common, but in /system.

Agreed, I committed it as is to have an initial version. I suppose in a Linux environment, runtime and link libraries are at the same place.

comment:15 by andreasf, 15 years ago

Cc: andreas.faerber@… removed

comment:16 by andreasf, 15 years ago

Cc: planche2k@… added

comment:17 by scottmc, 14 years ago

Is there anything left to do on this one? Freetype-2.3.11 is out now... Have the correct locations been ironed out yet?

comment:18 by axeld, 14 years ago

Owner: changed from axeld to nobody
Version: R1/pre-alpha1R1/Development

comment:19 by scottmc, 14 years ago

Resolution: fixed
Status: newclosed

I've updated the pathnames in freetype-config in hrev33649, and updated freetype in hrev33650, then built and tried building of sdl-ttf and it checked for both freetype-config and pkg-config and was happy to just find the freetype-config. I suspect in most cases packages will do this, that is check for both and if they find one will be happy with it. So unless there's a need for the pkg-config I'm ok with leaving it out and closing this ticket as fixed. The paths may (or may not) need adjusting if/when the time comes for addressing the arch issues listed above.

comment:20 by michaelvoliveira, 14 years ago

Resolution: fixed
Status: closedreopened

Please add freetype.pc file to /boot/common/pkgconfig folder

by michaelvoliveira, 13 years ago

Attachment: freetype2.pc added

in reply to:  20 comment:21 by scottmc, 13 years ago

Resolution: fixed
Status: reopenedclosed

Replying to michaelvoliveira:

Please add freetype.pc file to /boot/common/pkgconfig folder

Considered, but don't see a clear need for it. We have freetype-config, so if a port can't find freetype.pc is should fall back to freetye-config. If it doesn't, then open a trac ticket on HaikuPorts for the specific port and we'll take a closer look at the issue there.

Closing this as fixed.

comment:22 by myob, 12 years ago

Resolution: fixed
Status: closedreopened

Since hrev43873 the Freetype headers are no longer included but freetype-config still is.

The commit notes mention an optional package (and there is one listed in OptionalBuildFeatures), but there is none offered by installoptionalpackage

comment:23 by anevilyak, 12 years ago

Owner: changed from nobody to korli
Status: reopenedassigned

comment:25 by scottmc, 12 years ago

Resolution: fixed
Status: assignedclosed

All of the reported missing files are included in the most recent freetype packages.

comment:26 by korli, 12 years ago

Are you sure these missing files are actually installed on Haiku?

comment:27 by scottmc, 12 years ago

They are present in the .zip packages:
http://haiku-files.org/files/optional-packages/lib/freetype-2.4.9-r1a4-x86-gcc2-2012-08-28.zip

Might there be some changes needed to OptionalBuildFeatures to get all of the files from the zip package installed?

comment:28 by korli, 12 years ago

Added headers for libpng, jpeg and freetype in hrev44631.

Note: See TracTickets for help on using tickets.