/** @file Common setup tools that can be used while working around toolchain @copyright INTEL CONFIDENTIAL Copyright 2016 Intel Corporation. The source code contained or described herein and all documents related to the source code ("Material") are owned by Intel Corporation or its suppliers or licensors. Title to the Material remains with Intel Corporation or its suppliers and licensors. The Material may contain trade secrets and proprietary and confidential information of Intel Corporation and its suppliers and licensors, and is protected by worldwide copyright and trade secret laws and treaty provisions. No part of the Material may be used, copied, reproduced, modified, published, uploaded, posted, transmitted, distributed, or disclosed in any way without Intel's prior express written permission. No license under any patent, copyright, trade secret or other intellectual property right is granted to or conferred upon you by disclosure or delivery of the Materials, either expressly, by implication, inducement, estoppel or otherwise. Any license under such intellectual property rights must be express and approved by Intel in writing. Unless otherwise agreed by Intel in writing, you may not remove or alter this notice or any other notice embedded in Materials by Intel or Intel's suppliers or licensors in any way. This file contains a 'Sample Driver' and is licensed as such under the terms of your license agreement with Intel or your vendor. This file may be modified by the user, subject to the additional terms of the license agreement. **/ #ifndef __SETUP_PP_TOOLS__ #define __SETUP_PP_TOOLS__ #define CONCATENATE2_(X, Y) X##Y #define CONCATENATE2(X, Y) CONCATENATE2_(X, Y) #define CONCATENATE3_(X, Y, Z) X##Y##Z #define CONCATENATE3(X, Y, Z) CONCATENATE3_(X, Y, Z) /** Macro for incrementation The range of incrementation is determined by SETUP_PP_TOOLS_INC_X macros **/ #define INC(Argument) CONCATENATE2(SETUP_PP_TOOLS_INC_, Argument) #define SETUP_PP_TOOLS_INC_0 1 #define SETUP_PP_TOOLS_INC_1 2 #define SETUP_PP_TOOLS_INC_2 3 #define SETUP_PP_TOOLS_INC_3 4 #define SETUP_PP_TOOLS_INC_4 5 #define SETUP_PP_TOOLS_INC_5 6 #define SETUP_PP_TOOLS_INC_6 7 #define SETUP_PP_TOOLS_INC_7 8 #define SETUP_PP_TOOLS_INC_8 9 #define SETUP_PP_TOOLS_INC_9 10 #define SETUP_PP_TOOLS_INC_10 11 #define SETUP_PP_TOOLS_INC_11 12 #define SETUP_PP_TOOLS_INC_12 13 #define SETUP_PP_TOOLS_INC_13 14 #define SETUP_PP_TOOLS_INC_14 15 #define SETUP_PP_TOOLS_INC_15 16 #define SETUP_PP_TOOLS_INC_16 17 #define SETUP_PP_TOOLS_INC_17 18 #define SETUP_PP_TOOLS_INC_18 19 #define SETUP_PP_TOOLS_INC_19 20 #define SETUP_PP_TOOLS_INC_20 21 #define SETUP_PP_TOOLS_INC_21 22 #define SETUP_PP_TOOLS_INC_22 23 #endif