Elliott Hughes | f077784 | 2013-03-01 16:59:46 -0800 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2013 The Android Open Source Project |
| 3 | * |
| 4 | * Licensed under the Apache License, Version 2.0 (the "License"); |
| 5 | * you may not use this file except in compliance with the License. |
| 6 | * You may obtain a copy of the License at |
| 7 | * |
| 8 | * http://www.apache.org/licenses/LICENSE-2.0 |
| 9 | * |
| 10 | * Unless required by applicable law or agreed to in writing, software |
| 11 | * distributed under the License is distributed on an "AS IS" BASIS, |
| 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 13 | * See the License for the specific language governing permissions and |
| 14 | * limitations under the License. |
| 15 | */ |
| 16 | |
| 17 | #ifndef _BIONIC_FREEBSD_COMPAT_H_included |
| 18 | #define _BIONIC_FREEBSD_COMPAT_H_included |
| 19 | |
Elliott Hughes | b810462 | 2014-08-19 09:18:03 -0700 | [diff] [blame] | 20 | #define _BSD_SOURCE |
Elliott Hughes | d278b82 | 2013-06-25 14:48:10 -0700 | [diff] [blame] | 21 | #define REPLACE_GETOPT |
Elliott Hughes | 6b05c8e | 2013-04-11 13:54:48 -0700 | [diff] [blame] | 22 | |
Elliott Hughes | ab61eb3 | 2013-11-20 16:09:06 -0800 | [diff] [blame] | 23 | /* |
| 24 | * FreeBSD's libc has three symbols for every symbol: |
| 25 | * |
| 26 | * __f will be the actual implementation. |
| 27 | * _f will be a weak reference to __f (used for calls to f from within the library). |
| 28 | * f will be a weak reference to __f (used for calls to f from outside the library). |
| 29 | * |
| 30 | * We collapse this into just the one symbol, f. |
| 31 | */ |
| 32 | |
| 33 | /* Prevent weak reference generation. */ |
| 34 | #define __weak_reference(sym,alias) |
| 35 | |
| 36 | /* Ensure that the implementation itself gets the underscore-free name. */ |
| 37 | #define __sleep sleep |
| 38 | #define __usleep usleep |
| 39 | |
| 40 | /* Redirect internal C library calls to the public function. */ |
Elliott Hughes | ab61eb3 | 2013-11-20 16:09:06 -0800 | [diff] [blame] | 41 | #define _nanosleep nanosleep |
Elliott Hughes | a38cb08 | 2014-02-17 12:33:16 -0800 | [diff] [blame] | 42 | |
Elliott Hughes | f077784 | 2013-03-01 16:59:46 -0800 | [diff] [blame] | 43 | #endif |