1 /* search-list.h 2 3 Copyright (C) 2000-2020 Free Software Foundation, Inc. 4 5 This file is part of GNU Binutils. 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation; either version 3 of the License, or 10 (at your option) any later version. 11 12 This program is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with this program; if not, write to the Free Software 19 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, 20 MA 02110-1301, USA. */ 21 22 #ifndef search_list_h 23 #define search_list_h 24 25 /* Non-Posix systems use semi-colon as directory separator in lists, 26 since colon is part of drive letter spec. */ 27 #if defined (__MSDOS__) || defined (_WIN32) 28 #define PATH_SEP_CHAR ';' 29 #else 30 #define PATH_SEP_CHAR ':' 31 #endif 32 33 typedef struct search_list_elem 34 { 35 struct search_list_elem *next; 36 char path[1]; 37 } 38 Search_List_Elem; 39 40 typedef struct 41 { 42 struct search_list_elem *head; 43 struct search_list_elem *tail; 44 } 45 Search_List; 46 47 extern void search_list_append (Search_List *, const char *); 48 49 #endif /* search_list_h */ 50