00001 /* 00002 * Copyright (c) 2008-2011 Marius Zwicker / Elefant Racing Bayreuth. 00003 * All rights reserved. 00004 * 00005 * @ERB_OPEN_LICENSE_HEADER_START@ 00006 * 00007 * Licensed under the Apache License, Version 2.0 (the "License"); 00008 * you may not use this file except in compliance with the License. 00009 * You may obtain a copy of the License at 00010 * 00011 * http://www.apache.org/licenses/LICENSE-2.0 00012 * 00013 * Unless required by applicable law or agreed to in writing, software 00014 * distributed under the License is distributed on an "AS IS" BASIS, 00015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00016 * See the License for the specific language governing permissions and 00017 * limitations under the License. 00018 * 00019 * http://www.elefantracing.de 00020 * 00021 * @ERB_OPEN_LICENSE_HEADER_END@ 00022 */ 00023 00035 #ifndef BCS_CONFIG_H_ 00036 #define BCS_CONFIG_H_ 00037 00038 /***** Semaphore mapping selection ****/ 00039 00040 // make sure to select only one mapping! 00041 00042 // define this to use system v semaphores in the semaphore mapping 00043 //#define USE_SYSV_SEM 00044 00045 // define this to use posix semaphores in the semaphore mapping 00046 #define USE_POSIX_SEM 00047 00048 /***** IPC Queue settings ****/ 00049 00050 // define this to use posix queues instead of a custom userspace implementation 00051 //#define USE_POSIX_QUEUE 00052 00053 // define this to use sysv queues instead of a custom userspace implementation 00054 #define USE_SYSV_QUEUE 00055 00056 /* 00057 * Does not anything useful starting from here 00058 * but check for a valid build configuration only 00059 */ 00060 00061 #if (defined USE_POSIX_SEM && defined USE_SYSV_SEM) 00062 #error "You can only select one semaphore mapping at a time!" 00063 #endif 00064 00065 #if !(defined USE_POSIX_SEM) && !(defined USE_SYSV_SEM) 00066 #error "Please select a semaphore mapping first!" 00067 #endif 00068 00069 #if (defined USE_SYSV_QUEUE && defined USE_POSIX_QUEUE) 00070 #error "You can only select one queue implementation at a time!" 00071 #endif 00072 00073 #if !(defined USE_SYSV_QUEUE) && !(defined USE_POSIX_QUEUE) 00074 #error "Please select a queue implementation first!" 00075 #endif 00076 00077 #endif /* BCS_CONFIG_H_ */