# # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # # Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2019, Michal Nowak # include ../../../make-rules/shared-macros.mk COMPONENT_NAME= text-utilities COMPONENT_MAJOR_VERSION=2.33 COMPONENT_MINOR_VERSION=2 COMPONENT_VERSION= $(COMPONENT_MAJOR_VERSION).$(COMPONENT_MINOR_VERSION) COMPONENT_REVISION= 2 COMPONENT_SUMMARY= Various Linux utilities COMPONENT_FMRI= text/text-utilities COMPONENT_CLASSIFICATION=Applications/System Utilities COMPONENT_PROJECT_URL= https://www.kernel.org/pub/linux/utils/util-linux COMPONENT_SRC= util-linux-$(COMPONENT_VERSION) COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.xz COMPONENT_ARCHIVE_HASH= \ sha256:631be8eac6cf6230ba478de211941d526808dba3cd436380793334496013ce97 COMPONENT_ARCHIVE_URL= https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v$(COMPONENT_MAJOR_VERSION)/$(COMPONENT_ARCHIVE) COMPONENT_LICENSE_FILE= README.licensing COMPONENT_LICENSE= GPL-2.0-or-later, GPL-2.0, LGPL-2.1-or-later, BSD-3-Clause, BSD-4-Clause-UC, Public Domain # Testing needs the proto area prepared COMPONENT_TEST_DEP += $(BUILD_DIR)/%/.installed include $(WS_MAKE_RULES)/common.mk # We currently only want some of the text-utils text utilities from this # component, so enumerate it in a macro that we can use for build and install. # Anything else that we want should be added to this macro in the future. PROGRAMS = colcrt colrm column hexdump rename # Build a utility program used by one of the hexdump tests. PROGRAMS += test_sysinfo # Always show the build and link lines for easier debugging. COMPONENT_BUILD_ARGS += V=1 # Only build the programs that we want. COMPONENT_BUILD_ARGS += bin_PROGRAMS="$(PROGRAMS)" COMPONENT_BUILD_TARGETS = $(PROGRAMS) # Only install the bits we want. COMPONENT_INSTALL_ARGS += bin_PROGRAMS="$(PROGRAMS)" COMPONENT_INSTALL_TARGETS = install-man install-binPROGRAMS # Limit translations to the text utilities (and lib/* and include/* ) only. COMPONENT_PRE_INSTALL_ACTION = \ (cd $(@D)/po ; $(ENV) PATH="$(PATH)" $(GMAKE) text-utilities.pot-update) # Install the message files. COMPONENT_POST_INSTALL_ACTION = \ (cd $(@D)/po ; $(GMAKE) $(COMPONENT_INSTALL_ARGS) install ;\ $(RM) -rf $(PROTOUSRLIBDIR64)/libsmartcols.so* ;\ $(MKDIR) $(PROTOUSRLIBDIR64) ;\ $(CP) -a $(@D)/.libs/libsmartcols.so* $(PROTOUSRLIBDIR64) ;\ $(STRIP) $(PROTOUSRLIBDIR64)/libsmartcols.so.1.1.0 ; ) COMPONENT_TEST_ENV += TS_CMD_COLRM=$(PROTOUSRBINDIR)/colrm COMPONENT_TEST_ENV += TS_CMD_COLCRT=$(PROTOUSRBINDIR)/colcrt COMPONENT_TEST_ENV += TS_CMD_COLUMN=$(PROTOUSRBINDIR)/column COMPONENT_TEST_ENV += TS_CMD_HEXDUMP=$(PROTOUSRBINDIR)/hexdump COMPONENT_TEST_ENV += TS_CMD_RENAME=$(PROTOUSRBINDIR)/rename COMPONENT_TEST_ENV += PATH="$(PATH.gnu)" # Needed for the libsmartcols.so library COMPONENT_TEST_ENV += LD_LIBRARY_PATH=$(PROTOUSRLIBDIR64) COMPONENT_TEST_DIR = $(COMPONENT_SRC)/tests # The hexdump tests expect the test_sysinfo program in a different location # than where it's built. COMPONENT_PRE_TEST_ACTION = $(CP) $(@D)/test_sysinfo $(COMPONENT_SRC)/ COMPONENT_TEST_CMD = ./run.sh COMPONENT_TEST_ARGS = --verbose --show-diff COMPONENT_TEST_TARGETS = colrm colcrt column hexdump rename # Remove date from diff COMPONENT_TEST_TRANSFORMS += \ '-e "s/ *20[12][0-9].*//"' # Auto-generated dependencies REQUIRED_PACKAGES += library/ncurses REQUIRED_PACKAGES += system/library