1bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao/* 2dfb74c5f597542c7587a4144eb31b143d82a2281Elliott Hughes * Copyright (C) 2016 The Android Open Source Project 3bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * 4bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * Licensed under the Apache License, Version 2.0 (the "License"); 5bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * you may not use this file except in compliance with the License. 6bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * You may obtain a copy of the License at 7bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * 8dfb74c5f597542c7587a4144eb31b143d82a2281Elliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 9bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * 10bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * Unless required by applicable law or agreed to in writing, software 11bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * distributed under the License is distributed on an "AS IS" BASIS, 12bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * See the License for the specific language governing permissions and 14bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao * limitations under the License. 15bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao */ 16bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao 17bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#ifndef ANDROID_VERSIONING_H 18bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define ANDROID_VERSIONING_H 19bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao 20bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __INTRODUCED_IN(api_level) __attribute__((annotate("introduced_in=" #api_level))) 21bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __INTRODUCED_IN_FUTURE __attribute__((annotate("introduced_in_future"))) 22bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __DEPRECATED_IN(api_level) __attribute__((annotate("deprecated_in=" #api_level))) 23bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __REMOVED_IN(api_level) __attribute__((annotate("obsoleted_in=" #api_level))) 24bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __INTRODUCED_IN_32(api_level) __attribute__((annotate("introduced_in_32=" #api_level))) 25bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __INTRODUCED_IN_64(api_level) __attribute__((annotate("introduced_in_64=" #api_level))) 26bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __INTRODUCED_IN_ARM(api_level) __attribute__((annotate("introduced_in_arm=" #api_level))) 27bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __INTRODUCED_IN_X86(api_level) __attribute__((annotate("introduced_in_x86=" #api_level))) 28bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#define __INTRODUCED_IN_MIPS(api_level) __attribute__((annotate("introduced_in_mips=" #api_level))) 29bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao 30fff29fe17a4187ea83add76695040bc888e9d3bdJosh Gao#define __VERSIONER_NO_GUARD __attribute__((annotate("versioner_no_guard"))) 31fff29fe17a4187ea83add76695040bc888e9d3bdJosh Gao 32bfb6bae9fb5ef42e4f9ae2847f30f41938c04900Josh Gao#endif /* ANDROID_VERSIONING_H */ 33