1 #############################################################
5 #############################################################
6 FREETYPE_VERSION
:=$(strip $(subst ",, $(BR2_FREETYPE_VERSION)))
7 FREETYPE_SOURCE:=freetype-$(FREETYPE_VERSION).tar.bz2
8 FREETYPE_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/freetype
10 FREETYPE_DIR:=$(BUILD_DIR)/freetype-$(FREETYPE_VERSION)
11 FREETYPE_DIR1:=$(TOOL_BUILD_DIR)/freetype-$(FREETYPE_VERSION)
12 FREETYPE_HOST_DIR:=$(TOOL_BUILD_DIR)/freetype-$(FREETYPE_VERSION)-host
14 $(DL_DIR)/$(FREETYPE_SOURCE):
15 $(WGET) -P $(DL_DIR) $(FREETYPE_SITE)/$(FREETYPE_SOURCE)
17 $(FREETYPE_DIR)/.unpacked: $(DL_DIR)/$(FREETYPE_SOURCE)
18 $(FREETYPE_CAT) $(DL_DIR)/$(FREETYPE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
19 $(CONFIG_UPDATE) $(FREETYPE_DIR)
20 touch $(FREETYPE_DIR)/.unpacked
22 # freetype for the target
23 $(FREETYPE_DIR)/.configured: $(FREETYPE_DIR)/.unpacked
24 (cd $(FREETYPE_DIR); rm -f config.cache; \
25 $(TARGET_CONFIGURE_OPTS) \
26 $(TARGET_CONFIGURE_ARGS) \
28 --target=$(GNU_TARGET_NAME) \
29 --host=$(GNU_TARGET_NAME) \
30 --build=$(GNU_HOST_NAME) \
36 --libexecdir=/usr/lib \
38 --datadir=/usr/share \
39 --localstatedir=/var \
40 --includedir=/usr/include \
44 touch $(FREETYPE_DIR)/.configured
46 $(FREETYPE_DIR)/.compiled: $(FREETYPE_DIR)/.configured
47 $(MAKE) CCexe="$(HOSTCC
)" -C $(FREETYPE_DIR)
48 touch $(FREETYPE_DIR)/.compiled
50 $(STAGING_DIR)/usr/include/freetype:
51 ln -sf ./freetype2/freetype $(STAGING_DIR)/usr/include/freetype
53 #$(STAGING_DIR)/include/freetype:
54 # mkdir -p $(STAGING_DIR)/include
55 # ln -sf ../usr/include/freetype2/freetype $(STAGING_DIR)/include/freetype
57 $(STAGING_DIR)/lib/libfreetype.so: $(FREETYPE_DIR)/.compiled
58 $(MAKE) DESTDIR=$(STAGING_DIR) -C $(FREETYPE_DIR) install
59 $(SED) "s
,^
libdir=.
*,libdir=\'$(STAGING_DIR
)/lib
\',g
" $(STAGING_DIR)/lib/libfreetype.la
60 $(SED) "s
,^
prefix=.
*,prefix=\'$(STAGING_DIR
)\',g
" \
61 -e "s
,^
exec_prefix=.
*,exec_prefix=\'$(STAGING_DIR
)/usr
\',g
" \
62 -e "s
,^
includedir=.
*,includedir=\'$(STAGING_DIR
)/usr
/include\',g
" \
63 -e "s
,^
libdir=.
*,libdir=\'$(STAGING_DIR
)/lib
\',g
" \
64 $(STAGING_DIR)/usr/bin/freetype-config
65 touch -c $(STAGING_DIR)/lib/libfreetype.so
67 $(TARGET_DIR)/lib/libfreetype.so: $(STAGING_DIR)/lib/libfreetype.so
68 cp -dpf $(STAGING_DIR)/lib/libfreetype.so* $(TARGET_DIR)/lib/
69 -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/lib/libfreetype.so
71 # freetype for the host, needed for build-tools of fontconfig
73 # great, it can't be built out of tree reliably
74 $(FREETYPE_DIR1)/.unpacked: $(DL_DIR)/$(FREETYPE_SOURCE)
75 $(FREETYPE_CAT) $(DL_DIR)/$(FREETYPE_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
76 touch $(FREETYPE_DIR1)/.unpacked
78 $(FREETYPE_DIR1)/.configured: $(FREETYPE_DIR1)/.unpacked
79 (cd $(FREETYPE_DIR1); \
82 --prefix="$(FREETYPE_HOST_DIR
)" \
84 touch $(FREETYPE_DIR1)/.configured
86 $(FREETYPE_DIR1)/.compiled: $(FREETYPE_DIR1)/.configured
87 $(MAKE) CCexe="$(HOSTCC
)" -C $(FREETYPE_DIR1)
88 touch $(FREETYPE_DIR1)/.compiled
90 $(FREETYPE_HOST_DIR)/lib/libfreetype.so: $(FREETYPE_DIR1)/.configured
91 $(MAKE) -C $(FREETYPE_DIR1) install
94 .PHONY: freetype freetype-source freetype-links freetype-clean freetype-dirclean
96 freetype: uclibc pkgconfig $(TARGET_DIR)/lib/libfreetype.so freetype-links
98 freetype-source: $(DL_DIR)/$(FREETYPE_SOURCE)
100 freetype-links: $(STAGING_DIR)/usr/include/freetype # $(STAGING_DIR)/include/freetype
103 $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FREETYPE_DIR) uninstall
104 -$(MAKE) -C $(FREETYPE_DIR) clean
107 rm -rf $(FREETYPE_DIR)
109 .PHONY: host-freetype
111 host-freetype: $(FREETYPE_HOST_DIR)/lib/libfreetype.so
113 #############################################################
115 # Toplevel Makefile options
117 #############################################################
118 ifeq ($(BR2_PACKAGE_FREETYPE),y)