1b5b73dd3Smrg/* 2b5b73dd3Smrg * Copyright © 2007 Keith Packard 3b5b73dd3Smrg * 4b5b73dd3Smrg * Permission to use, copy, modify, distribute, and sell this software and its 5b5b73dd3Smrg * documentation for any purpose is hereby granted without fee, provided that 6b5b73dd3Smrg * the above copyright notice appear in all copies and that both that copyright 7b5b73dd3Smrg * notice and this permission notice appear in supporting documentation, and 8b5b73dd3Smrg * that the name of the copyright holders not be used in advertising or 9b5b73dd3Smrg * publicity pertaining to distribution of the software without specific, 10b5b73dd3Smrg * written prior permission. The copyright holders make no representations 11b5b73dd3Smrg * about the suitability of this software for any purpose. It is provided "as 12b5b73dd3Smrg * is" without express or implied warranty. 13b5b73dd3Smrg * 14b5b73dd3Smrg * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 15b5b73dd3Smrg * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 16b5b73dd3Smrg * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR 17b5b73dd3Smrg * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 18b5b73dd3Smrg * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 19b5b73dd3Smrg * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 20b5b73dd3Smrg * OF THIS SOFTWARE. 21b5b73dd3Smrg */ 22b5b73dd3Smrg 23b5b73dd3Smrg#ifndef _FCFTINT_H_ 24b5b73dd3Smrg#define _FCFTINT_H_ 25b5b73dd3Smrg 26b5b73dd3Smrg#include <fontconfig/fcfreetype.h> 27b5b73dd3Smrg 28b5b73dd3Smrg/* Bug of GCC 4.2 (visibility and -fPIC) 29b5b73dd3Smrg http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46861 */ 30b5b73dd3Smrg#if (__GNUC__ == 4 && __GNUC_MINOR__ == 2) && defined(__ELF__) && !defined(__sun) 31b5b73dd3Smrg#define FcPrivate 32b5b73dd3Smrg#define HAVE_GNUC_ATTRIBUTE 1 33b5b73dd3Smrg#include "fcftalias.h" 34b5b73dd3Smrg#elif (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) && defined(__ELF__) && !defined(__sun) && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) 35b5b73dd3Smrg#define FcPrivate __attribute__((__visibility__("hidden"))) 36b5b73dd3Smrg#define HAVE_GNUC_ATTRIBUTE 1 37b5b73dd3Smrg#include "fcftalias.h" 38b5b73dd3Smrg#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550) 39b5b73dd3Smrg#define FcPrivate __hidden 40b5b73dd3Smrg#else /* not gcc >= 3.3 and not Sun Studio >= 8 */ 41b5b73dd3Smrg#define FcPrivate 42b5b73dd3Smrg#endif 43b5b73dd3Smrg 44b5b73dd3Smrg/* fcfreetype.c */ 45b5b73dd3SmrgFcPrivate FcBool 46b5b73dd3SmrgFcFreeTypeIsExclusiveLang (const FcChar8 *lang); 47b5b73dd3Smrg 48b5b73dd3SmrgFcPrivate FcBool 49b5b73dd3SmrgFcFreeTypeHasLang (FcPattern *pattern, const FcChar8 *lang); 50b5b73dd3Smrg 51b5b73dd3SmrgFcPrivate FcChar32 52b5b73dd3SmrgFcFreeTypeUcs4ToPrivate (FcChar32 ucs4, const FcCharMap *map); 53b5b73dd3Smrg 54b5b73dd3SmrgFcPrivate FcChar32 55b5b73dd3SmrgFcFreeTypePrivateToUcs4 (FcChar32 private, const FcCharMap *map); 56b5b73dd3Smrg 57b5b73dd3SmrgFcPrivate const FcCharMap * 58b5b73dd3SmrgFcFreeTypeGetPrivateMap (FT_Encoding encoding); 59b5b73dd3Smrg 60b5b73dd3Smrg#endif /* _FCFTINT_H_ */ 61