exp2l: Work around a NetBSD 10.0/i386 bug.
[gnulib.git] / lib / savedir.h
blobc292b270f07dd72e329587f3536e30d805719590
1 /* Save the list of files in a directory in a string.
3 Copyright (C) 1997, 1999, 2001, 2003, 2005, 2009-2024 Free Software
4 Foundation, Inc.
6 This program is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <https://www.gnu.org/licenses/>. */
19 /* Written by David MacKenzie <djm@gnu.ai.mit.edu>. */
21 #ifndef _GL_SAVEDIR_H
22 #define _GL_SAVEDIR_H
24 /* This file uses _GL_ATTRIBUTE_MALLOC. */
25 #if !_GL_CONFIG_H_INCLUDED
26 #error "Please include config.h first."
27 #endif
29 #include <dirent.h>
30 #include <stdlib.h>
32 enum savedir_option
34 SAVEDIR_SORT_NONE,
35 SAVEDIR_SORT_NAME,
36 #if D_INO_IN_DIRENT
37 SAVEDIR_SORT_INODE,
38 SAVEDIR_SORT_FASTREAD = SAVEDIR_SORT_INODE
39 #else
40 SAVEDIR_SORT_FASTREAD = SAVEDIR_SORT_NONE
41 #endif
44 char *streamsavedir (DIR *, enum savedir_option)
45 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE;
46 char *savedir (char const *, enum savedir_option)
47 _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE;
49 #endif