87 MODULE_PREFIX_SET=yes |
87 MODULE_PREFIX_SET=yes |
88 |
88 |
89 # Additional command line options to GNU autoconf configure script |
89 # Additional command line options to GNU autoconf configure script |
90 MODULE_CONFIG_OPTS= \ |
90 MODULE_CONFIG_OPTS= \ |
91 --enable-biarch-config \ |
91 --enable-biarch-config \ |
92 --libdir='$(MODULE_PREFIX)/lib$(ARCHLIBSUBDIR)' \ |
|
93 --with-zlib \ |
92 --with-zlib \ |
94 --with-pic |
93 --with-pic |
95 |
94 |
96 # pkg-config files that need to have -R added |
95 # pkg-config files that need to have -R added |
97 FIX_PC_FILES=builds/unix/freetype2.in |
96 FIX_PC_FILES=builds/unix/freetype2.in |
|
97 install_pkgconfig_uninstalled:= FIX_PC_FILES=freetype2.in |
98 |
98 |
99 # Need to use GNU Make to build |
99 # Need to use GNU Make to build |
100 MODULE_MAKE=$(GNUMAKE) |
100 MODULE_MAKE=$(GNUMAKE) |
101 MODULE_MAKE_SET=yes |
101 MODULE_MAKE_SET=yes |
102 |
102 |
103 # Don't run normal configure/install rules - freetype is different |
103 # Environment variables to pass to configure & build steps |
104 CONFIGURE_TARGETS=$(SOURCE_DIR)/config.mk |
104 MODULE_CONFIG_ENV = GNUMAKE=$(GNUMAKE) |
105 CONFIGURE_TARGETS_SET=yes |
105 MODULE_BUILD_ENV = $(MODULE_CONFIG_ENV) |
106 INSTALL_TARGETS=install_freetype install_freetype_docs |
|
107 INSTALL_TARGETS_SET=yes |
|
108 |
106 |
109 # Environment variables to pass to configure & build steps |
107 MODULE_ADD_INSTALL_TARGETS = install_freetype_docs install_freetype_links |
110 MODULE_ENV = \ |
|
111 SHELL="/bin/bash" \ |
|
112 MAKESHELL="/bin/bash" \ |
|
113 CPP="$(CC) -E $(LIB_CFLAGS)" \ |
|
114 CXXCPP="$(CXX) -E $(CXXFLAGS)" \ |
|
115 MAKEFLAGS= \ |
|
116 MAKE=$(GNUMAKE) GNUMAKE=$(GNUMAKE) CFG="$(CONFIG_OPTS)" |
|
117 |
108 |
118 # Don't use -I paths to proto area, since freetype doesn't depend on |
109 # Don't use -I paths to proto area, since freetype doesn't depend on |
119 # anything there, but can break if it finds old freetype headers during |
110 # anything there, but can break if it finds old freetype headers during |
120 # an incremental rebuild. |
111 # an incremental rebuild. |
121 USE_DEFAULT_CONFIG_CPPFLAGS=no |
112 USE_DEFAULT_CONFIG_CPPFLAGS=no |
122 |
|
123 MODULE_CONFIG_ENV = $(MODULE_ENV) |
|
124 MODULE_BUILD_ENV = $(CONFIG_ENV) |
|
125 |
113 |
126 MODULE_INSTALL_MAKEFLAGS=bindir=$(MODULE_PREFIX)/bin$(ARCHLIBSUBDIR) |
114 MODULE_INSTALL_MAKEFLAGS=bindir=$(MODULE_PREFIX)/bin$(ARCHLIBSUBDIR) |
127 |
115 |
128 # Don't touch apinames when running set-elf-comments or it will trigger |
116 # Don't touch apinames when running set-elf-comments or it will trigger |
129 # a rebuild during "make install" that loses the comments. |
117 # a rebuild during "make install" that loses the comments. |
132 ### Include common rulesets |
120 ### Include common rulesets |
133 include ../Makefile.inc |
121 include ../Makefile.inc |
134 |
122 |
135 ### Rules specific to this directory: |
123 ### Rules specific to this directory: |
136 |
124 |
137 # Run configure script (Freetype helpfully does this the first time you call |
125 FT_libdir=$(MODULE_PREFIX)/lib$(ARCHLIBSUBDIR) |
138 # gmake - this isn't normal for autoconf programs) |
|
139 $(SOURCE_DIR)/config.mk: $(UNPACK_TARGET) |
|
140 (cd $(SOURCE_DIR) ; \ |
|
141 chmod a+x builds/unix/configure builds/unix/mkinstalldirs builds/unix/install-sh ; \ |
|
142 $(CONFIG_ENV) $(GNUMAKE) ) |
|
143 |
126 |
144 FT_bindir=$(MODULE_PREFIX)/bin$(ARCHLIBSUBDIR) |
127 install_freetype_links: $(PROTODIR)$(FT_libdir)/libfreetype.so |
145 FT_libdir=$(MODULE_PREFIX)/lib$(ARCHLIBSUBDIR) |
|
146 FT_docdir=$(MODULE_PREFIX)/share/doc/$(MODULE_NAME) |
|
147 |
128 |
148 # Have to override default_install since the -e causes our BUILD_DIR to |
129 $(PROTODIR)$(FT_libdir)/libfreetype.so: default_install |
149 # clash with the one in freetype's Makefiles |
130 mkdir -p $(@D) |
150 install_freetype: $(BUILD_TARGETS) |
131 -rm -f $@ |
151 mkdir -p $(PROTODIR)$(FT_bindir) |
132 ln -s libfreetype.so.6 $@ |
152 ( cd $(SOURCE_DIR) ; \ |
|
153 $(GNUMAKE) DESTDIR=$(PROTODIR) prefix=$(MODULE_PREFIX) libdir=$(FT_libdir) bindir=$(FT_bindir) install ) |
|
154 ( cd $(PROTODIR)$(FT_libdir) ; \ |
|
155 rm -f libfreetype.so ; ln -s libfreetype.so.6 libfreetype.so ) |
|
156 |
133 |
|
134 install_freetype_docs: $(PROTODIR)$(MODULE_DOC_DIR)/index.html |
157 |
135 |
158 install_freetype_docs: $(PROTODIR)$(FT_docdir)/index.html |
136 $(PROTODIR)$(MODULE_DOC_DIR)/index.html: $(BUILD_TARGETS) |
159 |
137 -rm -rf $(PROTODIR)$(MODULE_DOC_DIR) |
160 $(PROTODIR)$(FT_docdir)/index.html: $(BUILD_TARGETS) |
138 mkdir -p $(PROTODIR)$(MODULE_DOC_DIR) |
161 -rm -rf $(PROTODIR)$(FT_docdir) |
139 $(INSTALL_SCRIPT) -m 0444 \ |
162 mkdir -p $(PROTODIR)$(FT_docdir) |
140 $(SOURCE_DIR)/docs/reference/*.html \ |
163 ( cd $(SOURCE_DIR) ; \ |
141 $(SOURCE_DIR)/docs/formats.txt \ |
164 cp -fp docs/reference/*.html $(PROTODIR)$(FT_docdir)/ ) |
142 $(SOURCE_DIR)/docs/VERSION.DLL \ |
165 cp -fp $(SOURCE_DIR)/docs/formats.txt $(PROTODIR)$(FT_docdir)/ |
143 $(PROTODIR)$(MODULE_DOC_DIR)/ |
166 cp -fp $(SOURCE_DIR)/docs/VERSION.DLL $(PROTODIR)$(FT_docdir)/ |
144 ln -sf ft2-toc.html $(PROTODIR)$(MODULE_DOC_DIR)/index.html |
167 ln -sf ft2-toc.html $(PROTODIR)$(FT_docdir)/index.html |
|
168 |
|