diff --git a/cde/configure.ac b/cde/configure.ac index 6173479b7..c7b5dc1fe 100644 --- a/cde/configure.ac +++ b/cde/configure.ac @@ -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([ diff --git a/cde/lib/DtWidget/Makefile.am b/cde/lib/DtWidget/Makefile.am index 0726f6ce0..e09f4f5ea 100644 --- a/cde/lib/DtWidget/Makefile.am +++ b/cde/lib/DtWidget/Makefile.am @@ -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 diff --git a/cde/programs/dtfile/Makefile.am b/cde/programs/dtfile/Makefile.am index 2ce5f4749..2cc109071 100644 --- a/cde/programs/dtfile/Makefile.am +++ b/cde/programs/dtfile/Makefile.am @@ -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 diff --git a/cde/programs/dtlogin/Makefile.am b/cde/programs/dtlogin/Makefile.am index cdb3309e2..9551513dc 100644 --- a/cde/programs/dtlogin/Makefile.am +++ b/cde/programs/dtlogin/Makefile.am @@ -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