1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-02-13 19:52:20 +00:00

freetype: redo the way we detect and use

We (configure) relies on freetype-config existing and telling us what
the proper includes and libs are.
This commit is contained in:
Jon Trulson 2020-01-05 17:49:02 -07:00
parent 4d12673147
commit 7f4889f348
4 changed files with 54 additions and 35 deletions

View file

@ -65,9 +65,10 @@ OSMAJORVERSION=4
OSMINORVERSION=15
dnl locations of libs/includes if not in 'standard' places like on
dnl linux
MOTIF_LIB=""
MOTIF_INC=""
dnl linux (/usr/...). We build these up based on where X11 is, and
dnl other things as we go along.
EXTRA_LIBS=""
EXTRA_INCS=""
case "${host_os}" in
linux*)
@ -122,12 +123,13 @@ AM_CONDITIONAL([HPUX], [test "$build_hpux" = "yes"])
dnl Add osmajor/minor version to cppflags.
OSVERSION="-DOSMAJORVERSION=$OSMAJORVERSION -DOSMINORVERSION=$OSMINORVERSION"
dnl set CSRG_BASED define for the BSD's
dnl set CSRG_BASED define for the BSD's. Also, they use /usr/local
dnl for a lot of things, so add that to the INCS and LIBS
if test "$bsd" = "yes"
then
SOURCE_CPP_DEFINES="${SOURCE_CPP_DEFINES} -DCSRG_BASED"
MOTIF_LIB="-L/usr/local/lib"
MOTIF_INC="-I/usr/local/include -I/usr/X11R6/include/freetype2 -I/usr/local/include/freetype2"
EXTRA_INCS="-I/usr/local/include ${EXTRA_INCS}"
EXTRA_LIBS="-L/usr/local/lib ${EXTRA_LIBS}"
fi
is_x86_64=no
@ -294,6 +296,10 @@ AC_PROG_CC_C99
AC_PATH_X
AC_PATH_XTRA
dnl Add X11 goodies here
EXTRA_LIBS="${X_LIBS} ${EXTRA_LIBS}"
EXTRA_INCS="${X_CFLAGS} ${EXTRA_INCS}"
AC_FUNC_FORK
dnl programs with full paths
@ -371,21 +377,39 @@ AC_SUBST(TIRPCLIB)
dnl jpeg
AC_CHECK_LIB(jpeg, jpeg_read_header, [JPEGLIB="-ljpeg"],
[AC_MSG_ERROR([libjpeg not found, please install it])],
[$MOTIF_LIB $X_LIBS])
[${EXTRA_INCS} ${EXTRA_LIBS}])
AC_SUBST(JPEGLIB)
dnl Setup XTOOLLIB - we do it in this specific order to avoid ordering
dnl issues
XTOOLLIB=""
AC_CHECK_LIB(X11, XOpenDisplay, [XTOOLLIB="-lX11"], , $X_LIBS)
AC_CHECK_LIB(Xau, XauReadAuth, [XTOOLLIB="-lXau ${XTOOLLIB}"], , $X_LIBS)
AC_CHECK_LIB(Xt, XtInitialize, [XTOOLLIB="-lXt ${XTOOLLIB}"], , $X_LIBS)
AC_CHECK_LIB(ICE, IceCloseConnection, [XTOOLLIB="-lICE ${XTOOLLIB}"], , $X_LIBS)
AC_CHECK_LIB(SM, SmcOpenConnection, [XTOOLLIB="-lSM ${XTOOLLIB}"], , $X_LIBS)
AC_CHECK_LIB(Xm, XmTextSetString, [XTOOLLIB="-lXm ${XTOOLLIB}"], , [$MOTIF_LIB $X_LIBS])
XTOOLLIB="${X_LIBS} ${MOTIF_LIB} ${X_EXTRA_LIBS} ${X_PRE_LIBS} ${XTOOLLIB}"
AC_CHECK_LIB(X11, XOpenDisplay, [XTOOLLIB="-lX11"], ,
[${EXTRA_INCS} ${EXTRA_LIBS}])
AC_CHECK_LIB(Xau, XauReadAuth, [XTOOLLIB="-lXau ${XTOOLLIB}"], ,
[${EXTRA_INCS} ${EXTRA_LIBS}])
AC_CHECK_LIB(Xt, XtInitialize, [XTOOLLIB="-lXt ${XTOOLLIB}"], ,
[${EXTRA_INCS} ${EXTRA_LIBS}])
AC_CHECK_LIB(ICE, IceCloseConnection, [XTOOLLIB="-lICE ${XTOOLLIB}"], ,
[${EXTRA_INCS} ${EXTRA_LIBS}])
AC_CHECK_LIB(SM, SmcOpenConnection, [XTOOLLIB="-lSM ${XTOOLLIB}"], ,
[${EXTRA_INCS} ${EXTRA_LIBS}])
AC_CHECK_LIB(Xm, XmTextSetString, [XTOOLLIB="-lXm ${XTOOLLIB}"], ,
[${EXTRA_INCS} ${EXTRA_LIBS}])
XTOOLLIB="${EXTRA_INCS} ${EXTRA_LIBS} ${X_EXTRA_LIBS} ${XTOOLLIB}"
AC_SUBST([XTOOLLIB])
dnl Check for freetype libraries/headers
AC_CHECK_TOOLS([FREETYPE_CONFIG], [freetype-config])
if test -z "$FREETYPE_CONFIG"; then
AC_MSG_ERROR([Missing freetype-config. Install freetype development headers and library.])
fi
FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
AC_SUBST(FREETYPE_CFLAGS)
FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
AC_SUBST(FREETYPE_LIBS)
dnl check MISSING_PROGS - error out here if there's stuff in it.
if test -n "$MISSING_PROGS"; then
@ -401,9 +425,9 @@ dnl variable and presumably add those to your Makefile.am files. We
dnl have 192 of these currently, so... The user will just have to
dnl deal, or modify them here directly.
CPPFLAGS="${CPPFLAGS} ${SOURCE_CPP_DEFINES} ${CPP_COMPILER_FLAGS} ${OSVERSION}"
CFLAGS="${CFLAGS} ${C_COMPILER_FLAGS} ${X_CFLAGS} ${MOTIF_INC} ${PTHREAD_CFLAGS}"
CXXFLAGS="${CXXFLAGS} ${CXX_COMPILER_FLAGS} ${X_CFLAGS} ${MOTIF_INC} ${PTHREAD_CFLAGS}"
LIBS="${X_LIBS} ${LIBS} ${PTHREAD_LIBS}"
CFLAGS="${CFLAGS} ${C_COMPILER_FLAGS} ${EXTRA_INCS} ${PTHREAD_CFLAGS}"
CXXFLAGS="${CXXFLAGS} ${CXX_COMPILER_FLAGS} ${EXTRA_INCS} ${PTHREAD_CFLAGS}"
LIBS="${EXTRA_LIBS} ${LIBS} ${PTHREAD_LIBS}"
dnl All of the makefiles we need to generate go here...
AC_CONFIG_FILES([

View file

@ -4,23 +4,17 @@ MAINTAINERCLEANFILES = Makefile.in
lib_LTLIBRARIES = libDtWidget.la
AM_CPPFLAGS = -DCDE_INSTALLATION_TOP=${prefix} @DT_INCDIR@
AM_CPPFLAGS = -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) $(DT_INCDIR)
libDtWidget_la_CFLAGS = -DI18N_MSG -DMULTIBYTE
libDtWidget_la_CFLAGS = -DI18N_MSG -DMULTIBYTE $(FREETYPE_CFLAGS)
libDtWidget_la_LDFLAGS = -version-info 2:1:0
if LINUX
libDtWidget_la_CFLAGS += -I/usr/include/freetype2
endif
if BSD
libDtWidget_la_CFLAGS += -I/usr/local/include/freetype2
endif
libDtWidget_la_LIBADD = $(FREETYPE_LIBS)
if SOLARIS
libDtWidget_la_CFLAGS += -DNO_REGCOMP
libDtWidget_la_LIBADD = -lXm -lc -lw -lm -lintl
libDtWidget_la_LIBADD += -lc -lw -lintl
endif

View file

@ -14,11 +14,12 @@ dist_bin_SCRIPTS = dtfile_error
dtfile_CPPFLAGS = -I./dtcopy -DSHAPE -D_ILS_MACROS -DSUN_PERF \
-DCDE_INSTALLATION_TOP=\"${prefix}\" \
-DCDE_CONFIGURATION_TOP=\"$(CDE_CONFIGURATION_TOP)\" \
-DKORNSHELL=\"$(KSH)\" -I/usr/include/freetype2
-DKORNSHELL=\"$(KSH)\" $(FREETYPE_CFLAGS)
dtfile_LDADD = @DTCLIENTLIBS@ $(TIRPCLIB) -lXm -lXext \
$(XTOOLLIB) ${X_LIBS} dtcopy/sharedFuncs.o \
dtcopy/fsrtns.o
dtfile_LDADD = dtcopy/sharedFuncs.o \
dtcopy/fsrtns.o \
$(DTCLIENTLIBS) $(TIRPCLIB) -lXm -lXext $(FREETYPE_LIBS) \
$(XTOOLLIB)
if OPENBSD
dtfile_CPPFLAGS += -DFILE_MAP_OPTIMIZE

View file

@ -14,7 +14,7 @@ DEF_PM_PATH = $(CDE_CONFIGURATION_TOP)/appconfig/icons/%L/%B%M.pm:$(CDE_CONFIGUR
AM_CFLAGS = -DCDE_CONFIGURATION_TOP=\"$(CDE_CONFIGURATION_TOP)\" \
-DCDE_INSTALLATION_TOP=\"$(CDE_INSTALLATION_TOP)\" \
-DCDE_LOGFILES_TOP=\"$(CDE_LOGFILES_TOP)\" \
-I/usr/include/freetype2 -DBINDIR=\"$(XBINDIR)\" \
$(FREETYPE_CFLAGS) -DBINDIR=\"$(XBINDIR)\" \
-DXDMDIR=\"$(XDMDIR)\" \
-DKORNSHELL=$(KSH) -DUNIXCONN -DTCPCONN -DXDMCP
@ -49,11 +49,11 @@ dtchooser_SOURCES = chooser.c dtchooser.c vglogo.c vgutil.c vgcallback.c \
vglang.c
dtlogin_LDADD = libresource.a @DTCLIENTLIBS@ -lXau -lXmu -lXext -lXdmcp \
$(XTOOLLIB) $(TIRPCLIB)
$(FREETYPE_LIBS) $(XTOOLLIB) $(TIRPCLIB)
dtgreet_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB)
dtgreet_LDADD = $(DTCLIENTLIBS) $(FREETYPE_LIBS) $(XTOOLLIB)
dtchooser_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) -lXmu -lXext -lXdmcp $(XTOOLLIB)
dtchooser_LDADD = $(DTCLIENTLIBS) $(FREETYPE_LIBS) -lXmu -lXext -lXdmcp $(XTOOLLIB)
if LINUX