Radix cross Linux Build System

Cross-platform build system is designed to build distributions of different operating systems for a set of target devices

74 Commits   2 Branches   2 Tags

COMPONENT_TARGETS = $(HARDWARE_BUILD)

include ../../../../../build-system/constants.mk

SOURCE_REQUIRES = build-system/3pp/sources/packages/po4a

REQUIRES = build-system/3pp/app/perl-SGMLS/1.1

# ======= __END_OF_REQUIRES__ =======

version         = 0.68
tar_xz_archive  = $(BUILDSYSTEM)/3pp/sources/packages/po4a/po4a-$(version).tar.xz
SRC_ARCHIVE     = $(tar_xz_archive)
SRC_DIR         = $(TARGET_BUILD_DIR)/po4a-$(version)
src_done        = $(TARGET_BUILD_DIR)/.source-done

PATCHES = PATCHES

build_target    = $(TARGET_BUILD_DIR)/.built
install_target  = $(TARGET_BUILD_DIR)/.installed

BUILD_TARGETS   = $(build_target)
BUILD_TARGETS  += $(install_target)


include ../../../../../build-system/core.mk


$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP)
	$(UNPACK_SRC_ARCHIVE)
	$(APPLY_PATCHES)
	@touch $@

$(build_target): $(src_done)
	@( cd $(SRC_DIR) ; \
	   $(BUILDSYSTEM)/usr/bin/perl Build.PL prefix=/usr installdirs=vendor destdir=$(BUILDSYSTEM) ; \
	   ./Build ; \
	 )
	@touch $@

$(install_target): $(build_target)
	@echo -e "\n======= Installing Perl SGMLS binaries =======\n"
	@( cd $(SRC_DIR) ; \
	   ./Build install \
	            --install_path bindoc=/usr/share/man/man1 \
	            --install_path libdoc=/usr/share/man/man3 ; \
	 )
	@find $(BUILDSYSTEM)/usr/lib/perl5 \
	      -name perllocal.pod -o -name ".packlist" -o -name "*.bs" | xargs rm -f || true
	@echo -e "\n======= Setup PO4A build-system variable =======\n"
	@mkdir -p $(BUILDSYSTEM)/sbin && \
	  echo "PO4A               := $(BUILDSYSTEM)/usr/bin/po4a" >> $(BUILDSYSTEM)/sbin/.config
	@touch $@