-#include <stdarg.h>
-#include <sys/types.h>
-#include <dirent.h>
-
-VLC_EXPORT( void, LocaleFree, ( const char * ) );
-VLC_EXPORT( char *, FromLocale, ( const char * ) );
-VLC_EXPORT( char *, FromLocaleDup, ( const char * ) );
-VLC_EXPORT( char *, ToLocale, ( const char * ) );
-
-/* TODO: move all of this to "vlc_fs.h" or something like that */
-VLC_EXPORT( int, utf8_open, ( const char *filename, int flags, mode_t mode ) );
-VLC_EXPORT( FILE *, utf8_fopen, ( const char *filename, const char *mode ) );
-VLC_EXPORT( DIR *, utf8_opendir, ( const char *dirname ) );
-VLC_EXPORT( char *, utf8_readdir, ( DIR *dir ) );
-VLC_EXPORT( int, utf8_loaddir, ( DIR *dir, char ***namelist, int (*select)( const char * ), int (*compar)( const char **, const char ** ) ) );
-VLC_EXPORT( int, utf8_scandir, ( const char *dirname, char ***namelist, int (*select)( const char * ), int (*compar)( const char **, const char ** ) ) );
+/* iconv wrappers (defined in src/extras/libc.c) */
+typedef void *vlc_iconv_t;
+VLC_API vlc_iconv_t vlc_iconv_open( const char *, const char * ) VLC_USED;
+VLC_API size_t vlc_iconv( vlc_iconv_t, const char **, size_t *, char **, size_t * ) VLC_USED;
+VLC_API int vlc_iconv_close( vlc_iconv_t );