* src/support/os_unix.cpp
(addFontResources): add the system fonts dir to the paths
scanned by fontconfig.
(restoreFontResources): remove the system fonts dir from the
fontconfig configuration.
* configure.ac:
add check for the fontconfig devel headers.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20034
a592a061-630c-0410-9148-
cb99ea01b6c8
# some standard header files
AC_HEADER_DIRENT
AC_HEADER_MAJOR
# some standard header files
AC_HEADER_DIRENT
AC_HEADER_MAJOR
-AC_CHECK_HEADERS(sys/time.h sys/types.h sys/select.h strings.h locale.h io.h process.h NewAPIs.h utime.h sys/utime.h)
+AC_CHECK_HEADERS(sys/time.h sys/types.h sys/select.h strings.h locale.h io.h process.h NewAPIs.h utime.h sys/utime.h fontconfig/fontconfig.h)
# some standard structures
AC_HEADER_STAT
# some standard structures
AC_HEADER_STAT
#include <config.h>
#include "support/os.h"
#include <config.h>
#include "support/os.h"
#include <Carbon/Carbon.h>
#include <ApplicationServices/ApplicationServices.h>
#include <Carbon/Carbon.h>
#include <ApplicationServices/ApplicationServices.h>
+#elif defined(HAVE_FONTCONFIG_FONTCONFIG_H)
+#include "support/filetools.h"
+#include "support/Package.h"
+#include <fontconfig/fontconfig.h>
+using lyx::support::addPath;
kFMLocalActivationContext);
if (err)
lyxerr << "FMActivateFonts err = " << err << endl;
kFMLocalActivationContext);
if (err)
lyxerr << "FMActivateFonts err = " << err << endl;
+#elif defined(HAVE_FONTCONFIG_FONTCONFIG_H)
+ // Register BaKoMa truetype fonts with fontconfig
+ string const fonts_dir =
+ addPath(package().system_support().absFilename(), "fonts");
+ if (!FcConfigAppFontAddDir(0, (FcChar8 const *)fonts_dir.c_str()))
+ lyxerr << "Unable to register fonts with fontconfig." << endl;
#endif
}
void restoreFontResources()
#endif
}
void restoreFontResources()
+{
+#if defined(HAVE_FONTCONFIG_FONTCONFIG_H) && !defined(__APPLE__)
+ FcConfigAppFontClear(0);
+#endif
+}
} // namespace os
} // namespace support
} // namespace os
} // namespace support