1 /* $Id$ */ 2 /* Copyright (c) 2014 Pierre Pronchery <khorben@defora.org> */ 3 /* This file is part of DeforaOS System libSystem */ 4 /* This program is free software: you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License as published by 6 * the Free Software Foundation, version 3 of the License. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU Lesser General Public License for more details. 12 * 13 * You should have received a copy of the GNU Lesser General Public License 14 * along with this program. If not, see <http://www.gnu.org/licenses/>. */ 15 16 17 18 #ifndef LIBSYSTEM_SYSTEM_LICENSE_H 19 # define LIBSYSTEM_SYSTEM_LICENSE_H 20 21 22 /* types */ 23 typedef unsigned int LicenseFlags; 24 # define LF_CAN_JAIL 0x00000001 25 # define LF_CAN_MODIFY 0x00000002 26 # define LF_CAN_PATENT 0x00000004 27 # define LF_CAN_REDISTRIBUTE 0x00000008 28 # define LF_CAN_REVERSE_ENGINEER 0x00000010 29 # define LF_KEEP_ACKNOWLEDGEMENT 0x00000100 30 # define LF_KEEP_COPYRIGHT 0x00000200 31 # define LF_KEEP_DISCLAIMER 0x00000400 32 # define LF_KEEP_SOURCE_CODE 0x00000800 33 # define LF_VIRAL 0x00001000 34 # define LF_VIRAL_LIBRARIES 0x00002000 35 36 # define LICENSE_BSD2_FLAGS \ 37 (LF_CAN_JAIL \ 38 | LF_CAN_MODIFY \ 39 | LF_CAN_PATENT \ 40 | LF_CAN_REDISTRIBUTE \ 41 | LF_KEEP_COPYRIGHT \ 42 | LF_KEEP_DISCLAIMER) 43 # define LICENSE_BSD2_STRING "BSD (2 clause)" 44 # define LICENSE_BSD3_FLAGS \ 45 (LF_CAN_JAIL \ 46 | LF_CAN_MODIFY \ 47 | LF_CAN_PATENT \ 48 | LF_CAN_REDISTRIBUTE \ 49 | LF_KEEP_COPYRIGHT \ 50 | LF_KEEP_DISCLAIMER) 51 # define LICENSE_BSD3_STRING "BSD (3 clause)" 52 # define LICENSE_BSD4_FLAGS \ 53 (LF_CAN_JAIL \ 54 | LF_CAN_MODIFY \ 55 | LF_CAN_PATENT \ 56 | LF_CAN_REDISTRIBUTE \ 57 | LF_KEEP_ACKNOWLEDGEMENT \ 58 | LF_KEEP_COPYRIGHT \ 59 | LF_KEEP_DISCLAIMER) 60 # define LICENSE_BSD4_STRING "BSD (4 clause)" 61 # define LICENSE_GNU_GPL2_FLAGS \ 62 (LF_CAN_JAIL \ 63 | LF_CAN_MODIFY \ 64 | LF_CAN_PATENT \ 65 | LF_CAN_REDISTRIBUTE \ 66 | LF_KEEP_COPYRIGHT \ 67 | LF_KEEP_DISCLAIMER \ 68 | LF_KEEP_SOURCE_CODE \ 69 | LF_VIRAL \ 70 | LF_VIRAL_LIBRARIES) 71 # define LICENSE_GNU_GPL2_STRING "GNU GPL 2" 72 # define LICENSE_GNU_LGPL21_FLAGS \ 73 (LF_CAN_JAIL \ 74 | LF_CAN_MODIFY \ 75 | LF_CAN_PATENT \ 76 | LF_CAN_REDISTRIBUTE \ 77 | LF_KEEP_COPYRIGHT \ 78 | LF_KEEP_DISCLAIMER \ 79 | LF_KEEP_SOURCE_CODE \ 80 | LF_VIRAL) 81 # define LICENSE_GNU_LGPL21_STRING "GNU LGPL 2.1" 82 # define LICENSE_GNU_GPL3_FLAGS \ 83 (LF_CAN_MODIFY \ 84 | LF_CAN_REDISTRIBUTE \ 85 | LF_KEEP_COPYRIGHT \ 86 | LF_KEEP_DISCLAIMER \ 87 | LF_KEEP_SOURCE_CODE \ 88 | LF_VIRAL \ 89 | LF_VIRAL_LIBRARIES) 90 # define LICENSE_GNU_GPL3_STRING "GNU GPL 3" 91 # define LICENSE_GNU_LGPL3_FLAGS \ 92 (LF_CAN_MODIFY \ 93 | LF_CAN_REDISTRIBUTE \ 94 | LF_KEEP_COPYRIGHT \ 95 | LF_KEEP_DISCLAIMER \ 96 | LF_KEEP_SOURCE_CODE \ 97 | LF_VIRAL) 98 # define LICENSE_GNU_LGPL3_STRING "GNU LGPL 3" 99 # define LICENSE_PROPRIETARY_FLAGS 0x0000000 100 # define LICENSE_PROPRIETARY_STRING "Proprietary" 101 # define LICENSE_PUBLIC_DOMAIN_FLAGS \ 102 (LF_CAN_JAIL \ 103 | LF_CAN_MODIFY \ 104 | LF_CAN_REDISTRIBUTE \ 105 | LF_CAN_REVERSE_ENGINEER) 106 # define LICENSE_PUBLIC_DOMAIN_STRING "Public domain" 107 108 #endif /* !LIBSYSTEM_SYSTEM_LICENSE_H */ 109