.EXPORT_ALL_VARIABLES:

COMMON_MAKEFILES_DIR=./makefiles
include $(COMMON_MAKEFILES_DIR)/make.env

TARGET ?= iperf3

OPENSSLDIR_=$(wildcard $(OPENSSLDIR))

# Configure Options
# ------------------------------------------------------------------------------
include $(BR2_CONFIG)
# --host=$(BR2_ARCH)-linux \
#			--target=$(BR2_ARCH)-linux \
#			--build=i386-pc-linux-gnu \

$(TARGET_UPPERCASE)_CONFIG_OPTS = \
			--with-openssl=$(OPENSSLDIR) \
			CPPFLAGS=-idirafter$(LINUX_HDR_DIR)

# Commands
# ------------------------------------------------------------------------------
all: all_

untar: untar_
patch_: untar
patch: patch_

prepare: untar patch

preconfig:
	if [ ! -d $(OPENSSLDIR_)/lib ]; then \
		$(LN) $(OPENSSLDIR_) $(OPENSSLDIR_)/lib; \
	fi

config_: preconfig

config: config_

build: build_

# Override stage/release/install, not calling the default stage_/release_/install_
# Files locations used by stage and install MUST match.
# Files used in stage will also be at same locations after installed.
stage:
	@echo "Stage $(TARGET)."
	mkdir -p $(STAGING_DIR)/usr/include
	cp $(DIR)/src/iperf_api.h $(STAGING_DIR)/usr/include
	cp $(DIR)/src/iperf_config.h $(STAGING_DIR)/usr/include
	mkdir -p $(STAGING_DIR)/bin
	cp $(DIR)/src/.libs/$(TARGET) $(STAGING_DIR)/bin
	mkdir -p $(STAGING_DIR)/lib
	cp $(DIR)/src/.libs/libiperf.so.0.0.0 $(STAGING_DIR)/lib/libiperf.so.0

release:
	@echo "Release $(TARGET)."
	cp $(DIR)/src/.libs/$(TARGET) $(RELEASE_DIR)
	cp $(DIR)/src/.libs/libiperf.so.0.0.0 $(RELEASE_DIR)

install:
	@echo "Install $(TARGET)."
	mkdir -p $(INSTALL_DIR)/bin
	cp $(TARGET) $(INSTALL_DIR)/bin
	$(STRIP) $(INSTALL_DIR)/bin/$(TARGET)
	mkdir -p $(INSTALL_DIR)/lib
	cp libiperf.so.0.0.0 $(INSTALL_DIR)/lib/libiperf.so.0
	$(STRIP) $(INSTALL_DIR)/lib/libiperf.so.0

clean: clean_

distclean: distclean_

# Common Makefiles
# ------------------------------------------------------------------------------
include $(COMMON_MAKEFILES_DIR)/make.config
