ocf/tests/functional/Makefile
Adam Rutkowski e11edcacd8 Rename makefile ENV* variables to OCF_ENV*
'ENV' variable is set and used by OS utilities  on some Linux
distros, interfering with OCF build system. Renaming ENV and
other ENV* variables to OCF_ENV* to avoid conflicts.

Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-04-20 16:54:04 +02:00

50 lines
1.0 KiB
Makefile
Executable File

#
# Copyright(c) 2019 Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause-Clear
#
PWD=$(shell pwd)
OCFDIR=$(PWD)/../../
ADAPTERDIR=$(PWD)/pyocf
SRCDIR=$(ADAPTERDIR)/ocf/src
INCDIR=$(ADAPTERDIR)/ocf/include
WRAPDIR=$(ADAPTERDIR)/wrappers
CC=gcc
CFLAGS=-g -Wall -I$(INCDIR) -I$(SRCDIR)/ocf/env
LDFLAGS=-pthread -lz
SRC=$(shell find $(SRCDIR) $(WRAPDIR) -name \*.c)
OBJS=$(patsubst %.c, %.o, $(SRC))
OCFLIB=$(ADAPTERDIR)/libocf.so
all: | sync
$(MAKE) $(OCFLIB)
$(OCFLIB): $(OBJS)
@echo "Building $@"
@$(CC) -shared -o $@ $(CFLAGS) $^ -fPIC $(LDFLAGS)
%.o: %.c
@echo "Compiling $@"
@$(CC) -c $(CFLAGS) -o $@ -fPIC $^ $(LDFLAGS)
sync:
@echo "Syncing OCF sources"
@mkdir -p $(ADAPTERDIR)/ocf
@$(MAKE) -C $(OCFDIR) inc O=$(ADAPTERDIR)/ocf
@$(MAKE) -C $(OCFDIR) src O=$(ADAPTERDIR)/ocf
@$(MAKE) -C $(OCFDIR) env O=$(ADAPTERDIR)/ocf OCF_ENV=posix
clean:
@rm -rf $(OCFLIB) $(OBJS)
@echo " CLEAN "
distclean: clean
@rm -rf $(OCFLIB) $(OBJS)
@rm -rf $(SRCDIR)/ocf
@rm -rf $(INCDIR)/ocf
@echo " DISTCLEAN "
.PHONY: all clean sync distclean