X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=flower%2Finclude%2Flibc-extension.hh;h=51e5b20373131a3373509218081e0a9c1e40627b;hb=5b4b0d6e9a197e8f9eb085b7c2ad78b8be3e5cfc;hp=62e5a5a2b8407ac462dd3cfe5c94c16536de9ad4;hpb=bdf4ab13203502e7ec7cf9cf5896527643a07c1f;p=lilypond.git diff --git a/flower/include/libc-extension.hh b/flower/include/libc-extension.hh index 62e5a5a2b8..51e5b20373 100644 --- a/flower/include/libc-extension.hh +++ b/flower/include/libc-extension.hh @@ -3,14 +3,15 @@ source file of the flowerlib - (c) 1997--2005 Han-Wen Nienhuys + (c) 1997--2008 Han-Wen Nienhuys */ #ifndef LIBC_EXTENSION_HH #define LIBC_EXTENSION_HH -#include -#include +#include +#include +using namespace std; #include "config.hh" @@ -22,8 +23,21 @@ void *memmem (void const *haystack, int haystack_len, void const *needle, int needle_len); #endif /* HAVE_MEMMEM */ +#if ! HAVE_MEMRCHR +unsigned char *memrchr (unsigned char const *p, int n, char c); +#endif + +#if ! HAVE_MEMREV +unsigned char *memrev (unsigned char *byte, int length_i); +#endif + +double my_round (double); + +/* namespace std { */ + #if ! HAVE_SNPRINTF /* GNU extension. */ int snprintf (char *str, size_t n, char const *format, ...); + __attribute__ ((format (printf, 3, 4))); #endif #if ! HAVE_VSNPRINTF /* GNU extension. */ @@ -36,80 +50,6 @@ int isinf (double x); #endif #endif -#ifdef __cplusplus -extern "C" { -#endif - -#if ! HAVE_FOPENCOOKIE /* GNU extension. */ - -#include -#include - -#if (! defined (__off64_t) && ! defined (__off64_t_defined)) || ! defined (__cplusplus) -#define off64_t unsigned long long -#endif - -#if HAVE_LIBIO_H -#include -#else - -#if 1 //! HAVE_FUNOPEN - -#define cookie_io_functions_t le_cookie_io_functions_t - typedef struct - { - ssize_t (*read) (void *, char *, size_t); - ssize_t (*write) (void *, char const *, size_t); - int (*seek) (void *, off64_t *, int); - int (*close) (void *); - } cookie_io_functions_t; - -#else - - typedef struct - { - int (*read) (void *, char *, int); - int (*write) (void *, char const *, int); - fpos_t (*seek) (void *, fpos_t, int); - int (*close) (void *); - } cookie_io_functions_t; - -#endif /* ! HAVE_FUNOPEN */ -#endif /* ! HAVE_LIBIO_H */ - - FILE *fopencookie (void *cookie, char const *modes, - cookie_io_functions_t io_funcs); - -#if ! HAVE_FUNOPEN - - int handle_cookie_io_fclose (FILE *); - int handle_cookie_io_fprintf (FILE *file, char const *format, ...); - int handle_cookie_io_putc (int c, FILE *file); - - /* FIXME: ttftool uses fclose fopencookie fprintf and putc only. if - ALIAS_FILE_TO_FILECOOKIE, blondly redefine those functions - to wrappers that check for and handle Memory_out_stream. */ -#ifdef ALIAS_FILE_TO_FILECOOKIE - -#define fclose handle_cookie_io_fclose -#define fprintf handle_cookie_io_fprintf -#ifdef putc -#define std_putc putc -#undef putc -#endif -#define putc handle_cookie_io_putc - -#endif /* ALIAS_FILE_TO_FILECOOKIE */ -#endif /* ! HAVE_FUNOPEN */ -#endif /* ! HAVE_FOPENCOOKIE */ - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -unsigned char *memrchr (unsigned char const *p, int n, char c); -unsigned char *strrev (unsigned char *byte, int length_i); - -double my_round (double); +/* }; */ #endif /* LIBC_EXTENSION_HH */