summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWerner Lemberg <wl@gnu.org>2022-01-03 17:48:36 +0100
committerWerner Lemberg <wl@gnu.org>2022-01-20 16:45:18 +0000
commit02fa26f4cdb6b2da96afddb56d4482c67ba6ff78 (patch)
treef3489bb7a46bdf90606930993e33f48f5a19c081
parent0bf49bd229427b56ab61e8e2c08f3fe448286890 (diff)
downloadfreetype2-02fa26f4cdb6b2da96afddb56d4482c67ba6ff78.tar.gz
[builds/unix] Handle 'librsvg' for demo programs.
* builds/unix/configure.raw: Check for 'librsvg'. (LIB_CLOCK_GETTIME): Don't call `AC_SUBST` on this but on... (FT_DEMO_CFLAGS, FT_DEMO_LDFLAGS): ... these two new variables. * builds/unix/unix-cc.in (LIB_CLOCK_GETTIME): Replaced by... (FT_DEMO_CFLAGS, FT_DEMO_LDFLAGS): ... these two new variables.
-rw-r--r--builds/unix/configure.raw27
-rw-r--r--builds/unix/unix-cc.in10
2 files changed, 28 insertions, 9 deletions
diff --git a/builds/unix/configure.raw b/builds/unix/configure.raw
index fc321727c..08ec21ad8 100644
--- a/builds/unix/configure.raw
+++ b/builds/unix/configure.raw
@@ -514,19 +514,36 @@ if test x"$with_brotli" = xyes -a "$have_brotli" = no; then
fi
-# check for librt
+# Checks for the demo programs.
#
-# We need `clock_gettime' for the `ftbench' demo program.
+# FreeType doesn't need this. However, since the demo program repository
+# doesn't come with a `configure` script of its own, we integrate the tests
+# here for simplicity.
+
+# We need `clock_gettime` from 'librt' for the `ftbench` demo program.
#
-# The code is modeled after gnulib's file `clock_time.m4', ignoring
+# The code is modeled after gnulib's file `clock_time.m4`, ignoring
# very old Solaris systems.
-
LIB_CLOCK_GETTIME=
AC_SEARCH_LIBS([clock_gettime],
[rt],
[test "$ac_cv_search_clock_gettime" = "none required" \
|| LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime])
-AC_SUBST([LIB_CLOCK_GETTIME])
+
+# 'librsvg' is needed to demonstrate SVG support.
+PKG_CHECK_MODULES([LIBRSVG], [librsvg-2.0],
+ [have_librsvg="yes (pkg-config)"], [have_librsvg=no])
+
+FT_DEMO_CFLAGS=""
+FT_DEMO_LDFLAGS="$LIB_CLOCK_GETTIME"
+
+if test "$have_librsvg" != no; then
+ FT_DEMO_CFLAGS="$FT_DEMO_CFLAGS $LIBRSVG_CFLAGS"
+ FT_DEMO_LDFLAGS="$FT_DEMO_LDFLAGS $LIBRSVG_LIBS"
+fi
+
+AC_SUBST([FT_DEMO_CFLAGS])
+AC_SUBST([FT_DEMO_LDFLAGS])
# Some options handling SDKs/archs in CFLAGS should be copied
diff --git a/builds/unix/unix-cc.in b/builds/unix/unix-cc.in
index 13f1d1473..d5ae46745 100644
--- a/builds/unix/unix-cc.in
+++ b/builds/unix/unix-cc.in
@@ -106,9 +106,7 @@ endif
# Linker flags.
#
-LDFLAGS := @LDFLAGS@
-LIB_CLOCK_GETTIME := @LIB_CLOCK_GETTIME@ # for ftbench
-
+LDFLAGS := @LDFLAGS@
# export symbols
#
@@ -118,11 +116,15 @@ EXPORTS_LIST := $(OBJ_DIR)/ftexport.sym
CCexe := $(CCraw_build) # used to compile `apinames' only
-# Library linking
+# Library linking.
#
LINK_LIBRARY = $(LIBTOOL) --mode=link $(CCraw) -o $@ $(OBJECTS_LIST) \
-rpath $(libdir) -version-info $(version_info) \
$(LDFLAGS) -no-undefined \
-export-symbols $(EXPORTS_LIST)
+# For the demo programs.
+FT_DEMO_CFLAGS := @FT_DEMO_CFLAGS@
+FT_DEMO_LDFLAGS := @FT_DEMO_LDFLAGS@
+
# EOF