Statistics
| Branch: | Tag: | Revision:

root / xseg / base.mk @ 8c732208

History | View | Annotate | Download (3 kB)

1
# Copyright 2012 GRNET S.A. All rights reserved.
2
#
3
# Redistribution and use in source and binary forms, with or
4
# without modification, are permitted provided that the following
5
# conditions are met:
6
#
7
#   1. Redistributions of source code must retain the above
8
#      copyright notice, this list of conditions and the following
9
#      disclaimer.
10
#   2. Redistributions in binary form must reproduce the above
11
#      copyright notice, this list of conditions and the following
12
#      disclaimer in the documentation and/or other materials
13
#      provided with the distribution.
14
#
15
# THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
16
# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
19
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
22
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
23
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
25
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26
# POSSIBILITY OF SUCH DAMAGE.
27
#
28
# The views and conclusions contained in the software and
29
# documentation are those of the authors and should not be
30
# interpreted as representing official policies, either expressed
31
# or implied, of GRNET S.A.
32
#
33

    
34
# Setup for xseg Makefiles.
35

    
36
ifndef TARGET
37
TARGET:=$(shell basename $(shell pwd))
38
endif
39

    
40
export CC=gcc
41
ifndef MOPTS
42
export MOPTS=
43
endif
44
ifndef COPTS
45
export COPTS=-O2 -g -finline-functions $(MOPTS) $(DEBUG)
46
endif
47
ifndef CSTD
48
export CSTD=-std=gnu99 -pedantic
49
endif
50

    
51
export TOPDIR=$(shell dirname $(CURDIR))
52
ifeq (,$(VERSION))
53
export VERSION=$(shell cat $(TOPDIR)/version)
54
endif
55

    
56
ifeq (,$(DESTDIR))
57
export DESTDIR=/
58
endif
59

    
60
ifeq (,$(KVER))
61
export KVER=$(shell uname -r)
62
endif
63

    
64

    
65
bindir=/usr/bin/
66
libdir=/usr/lib/
67
pythondir=/usr/lib/python2.7/
68
moduledir=/lib/modules/$(KVER)/extra/
69
srcdir=/usr/src/archipelago-modules-dkms-$(VERSION)/xseg/
70
ganetidir=/usr/share/ganeti/extstorage/archipelago/
71
ganetihooksdir=/etc/ganeti/hooks/
72

    
73
INC=-I$(BASE)
74
INC+=-I$(BASE)/peers/$(TARGET)
75
INC+=-I$(BASE)/sys/$(TARGET)
76
INC+=-I$(BASE)/drivers/$(TARGET)
77
export INC
78

    
79
export LIB=$(BASE)/lib/$(TARGET)
80
export CFLAGS=-Wall $(COPTS) $(CSTD)
81

    
82
#ifeq (,$(XSEG_HOME))
83
#export XSEG_HOME=$(shell ${XSEG_HOME})
84
#endif
85

    
86
ifeq (,$(XSEG_HOME))
87
export XSEG_HOME=$(CURDIR)
88
endif
89

    
90
CONFIG=./config.mk
91

    
92
#default:
93

    
94
#.PHONY: clean-config
95

    
96
#clean: clean-config
97

    
98
#clean-config:
99
#	rm -f $(CONFIG)
100

    
101
ifndef BASE
102
exists=$(shell [ -f "$(CONFIG)" ] && echo exists)
103
ifeq (exists,$(exists))
104
include $(CONFIG)
105
else
106
$(shell $(XSEG_HOME)/envsetup show | sed -e 's/"//g' > "$(CONFIG)")
107
include $(CONFIG)
108
endif
109

    
110
ifeq (,$(XSEG_DOMAIN_TARGETS))
111
export XSEG_DOMAIN_TARGETS=$(shell $(XSEG_HOME)/tools/xseg-domain-targets | sed -e 's/^[^=]*=//;s/"//g')
112
endif
113
export BASE=$(XSEG_HOME)
114
endif