device/pciexp: Add hot-plug capable helper function
[coreboot2.git] / payloads / libpayload / bin / lp.functions
blobd641e699911df65f665d774e651887b98a05c495
1 ##
2 ## Copyright (C) 2008 Advanced Micro Devices, Inc.
3 ##
4 ## Redistribution and use in source and binary forms, with or without
5 ## modification, are permitted provided that the following conditions
6 ## are met:
7 ## 1. Redistributions of source code must retain the above copyright
8 ##    notice, this list of conditions and the following disclaimer.
9 ## 2. Redistributions in binary form must reproduce the above copyright
10 ##    notice, this list of conditions and the following disclaimer in the
11 ##    documentation and/or other materials provided with the distribution.
12 ## 3. The name of the author may not be used to endorse or promote products
13 ##    derived from this software without specific prior written permission.
15 ## THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 ## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 ## ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 ## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 ## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 ## OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 ## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 ## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 ## OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 ## SUCH DAMAGE.
27 # Common functions used by the libpayload wrappers
29 error() {
30         echo "Error: $1"
31         exit 1
34 warn() {
35         echo "Warning: $1"
38 # For in-tree builds, allow to override the libpayload build dir.
40 _OBJ=${_OBJ:-$BASE/../build}
42 # If the user didn't specify LIBPAYLOAD_PREFIX, then preload it
43 # with the default prefix value
45 if [ -z "$LIBPAYLOAD_PREFIX" ]; then
46         LIBPAYLOAD_PREFIX=$DEFAULT_PREFIX/libpayload
49 # If we're lucky, then everything was installed correctly, and the
50 # library is locatd in the same prefix as ourselves.  If not, then
51 # use the value of LIBPAYLOAD_PREFIX
53 if [ -f $BASE/../lib/libpayload.a ]; then
54         _LIBDIR=$BASE/../lib
55 elif [ -f $_OBJ/libpayload.config ]; then
56         _LIBDIR=$_OBJ
57 else
58         _LIBDIR=$LIBPAYLOAD_PREFIX/lib
61 if [ -d $BASE/../include ]; then
62         _INCDIR=$BASE/../include
63 else
64         _INCDIR=$LIBPAYLOAD_PREFIX/include
67 if [ -d $BASE/../vboot ]; then
68         _VBOOTINCDIR=$BASE/../vboot/include
69 else
70         _VBOOTINCDIR=$LIBPAYLOAD_PREFIX/../vboot/include