1 /*** 2 This file is part of snapcast 3 Copyright (C) 2014-2021 Johannes Pohl 4 5 This program is free software: you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation, either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. 17 ***/ 18 19 #ifndef VERSION_HPP 20 #define VERSION_HPP 21 22 #include <string> 23 24 namespace version 25 { 26 27 #ifdef REVISION 28 static constexpr auto revision = REVISION; 29 #else 30 static constexpr auto revision = ""; 31 #endif 32 33 #ifdef VERSION 34 static constexpr auto code = VERSION; 35 #else 36 static constexpr auto code = ""; 37 #endif 38 rev(std::size_t len=0)39static std::string rev(std::size_t len = 0) 40 { 41 if (len == 0) 42 { 43 return revision; 44 } 45 return std::string(revision).substr(0, len); 46 } 47 48 } // namespace version 49 50 #endif 51