1 /* 2 This file is part of LilyPond, the GNU music typesetter. 3 4 Copyright (C) 2004--2020 Han-Wen Nienhuys <hanwen@xs4all.nl> 5 6 LilyPond 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. 10 11 LilyPond 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. 15 16 You should have received a copy of the GNU General Public License 17 along with LilyPond. If not, see <http://www.gnu.org/licenses/>. 18 */ 19 20 #ifndef GUILE_COMPATIBILITY_HH 21 #define GUILE_COMPATIBILITY_HH 22 23 #if SCM_MAJOR_VERSION == 1 24 #if SCM_MINOR_VERSION > 6 && SCM_MINOR_VERSION < 9 25 /* 26 GUILE V1.7.0 - V1.8.n 27 */ 28 #define scm_from_unsigned(x) scm_from_unsigned_integer (x) 29 #else // SCM_MINOR_VERSION >= 9 30 /* 31 GUILE V1.9.n 32 */ 33 #endif // SCM_MINOR_VERSION > 6 && SCM_MINOR_VERSION < 9 34 #else // SCM_MAJOR_VERSION != 1 35 /* 36 Add any compatibility definitions here for Guile V2.n 37 */ 38 #endif // SCM_MAJOR_VERSION == 1 39 #if defined (SCM_MAJOR_VERSION) && (SCM_MAJOR_VERSION > 1) 40 #define GUILEV2 1 41 #endif 42 // TODO - remove GUILE1 definition when support for Guile 1 is dropped. 43 #if defined (SCM_MAJOR_VERSION) && (SCM_MAJOR_VERSION < 2) 44 #define GUILEV1 1 45 #define GUILEV2 0 46 #endif 47 #endif /* GUILE_COMPATIBILITY_HH */ 48