# # This file and its contents are supplied under the terms of the # Common Development and Distribution License ("CDDL"), version 1.0. # You may only use this file in accordance with the terms of version # 1.0 of the CDDL. # # A full copy of the text of the CDDL should have accompanied this # source. A copy of the CDDL is also available via the Internet at # http://www.illumos.org/license/CDDL. # # # Copyright 2015 Alexander Pyhalov # include ../../../make-rules/shared-macros.mk COMPONENT_NAME= openjade COMPONENT_VERSION= 1.3.2 COMPONENT_REVISION= 6 COMPONENT_SUMMARY= OpenJade DSSSL-Engine for SGML documents COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz COMPONENT_ARCHIVE_HASH= sha256:1d2d7996cc94f9b87d0c51cf0e028070ac177c4123ecbfd7ac1cb8d0b7d322d1 COMPONENT_ARCHIVE_URL= https://sourceforge.net/projects/openjade/files/openjade/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE) COMPONENT_PROJECT_URL= https://openjade.sourceforge.net/ COMPONENT_FMRI= developer/documentation-tool/openjade COMPONENT_CLASSIFICATION= System/Text Tools COMPONENT_LICENSE= MIT COMPONENT_LICENSE_FILE= COPYING # openjade segfaults in libostyle.so when compiled using gcc 10 or later. # This needs to be defined before include common.mk otherwise USERLAND_REQUIRED_PACKAGES won't be correct. GCC_VERSION= 7 include $(WS_MAKE_RULES)/common.mk PATH= $(PATH.gnu) COMPONENT_PREP_ACTION= ( \ cp $(COMPONENT_DIR)/files/jade_style-sheet.dtd $(@D)/dsssl &&\ cd $(@D) &&\ rm -f aclocal.m4 missing &&\ cp config/configure.in . &&\ PATH="$(PATH)" libtoolize --force &&\ aclocal -I config &&\ autoconf --force ) # The linker is too agressive LD_Z_IGNORE= # Missing files in build dir for configure without this. COMPONENT_PRE_CONFIGURE_ACTION= ( $(CLONEY) $(SOURCE_DIR) $(@D) ) CONFIGURE_SCRIPT = $(@D)/configure CONFIGURE_OPTIONS += --disable-static CONFIGURE_OPTIONS += --enable-spincludedir=$(USRINCDIR)/OpenSP CONFIGURE_OPTIONS += --datadir=$(USRSHAREDIR)/sgml/openjade CONFIGURE_OPTIONS += --enable-splibdir=$(USRLIBDIR.$(BITS)) CONFIGURE_OPTIONS += --disable-http CONFIGURE_OPTIONS += --enable-mif CONFIGURE_OPTIONS += --enable-default-catalog="CATALOG:/etc/sgml/catalog:$(USRSHAREDIR)/sgml/CATALOG" CONFIGURE_OPTIONS += LINKFLAGS="$(LDFLAGS)" COMPONENT_INSTALL_TARGETS= install install-man # We need jade symlink COMPONENT_POST_INSTALL_ACTION += $(SYMLINK) openjade $(PROTOUSRBINDIR)/jade ; # Install headers COMPONENT_POST_INSTALL_ACTION += \ $(INSTALL) -d $(PROTOUSRINCDIR)/openjade ; \ for f in \ $(SOURCE_DIR)/generic/*.h $(SOURCE_DIR)/grove/Node.h $(SOURCE_DIR)/spgrove/GroveApp.h \ $(SOURCE_DIR)/spgrove/GroveBuilder.h $(SOURCE_DIR)/style/FOTBuilder.h $(SOURCE_DIR)/style/GroveManager.h \ $(SOURCE_DIR)/style/DssslApp.h $(SOURCE_DIR)/style/dsssl_ns.h ; do \ $(INSTALL) $$f $(PROTOUSRINCDIR)/openjade ; \ done ; # Install sgml COMPONENT_POST_INSTALL_ACTION += \ $(INSTALL) -d $(PROTOUSRSHAREDIR)/sgml/openjade ; \ $(INSTALL) -d $(PROTOVARDIR)/lib/sgml ; \ cd $(SOURCE_DIR)/dsssl && \ $(CP) catalog dsssl.dtd extensions.dsl fot.dtd style-sheet.dtd \ builtins.dsl jade_style-sheet.dtd $(PROTOUSRSHAREDIR)/sgml/openjade && \ $(GSED) 's:"\([^"]*\(dtd\|dsl\)\)"$$:"/usr/share/sgml/openjade/\1":' catalog > $(PROTOVARDIR)/lib/sgml/CATALOG.openjade ; \ $(SYMLINK) CATALOG.openjade $(PROTOVARDIR)/lib/sgml/CATALOG.jade_dsl ; \ $(SYMLINK) ../../../..$(VARDIR)/lib/sgml/CATALOG.openjade $(PROTOUSRSHAREDIR)/sgml/CATALOG.openjade ; \ $(SYMLINK) ../../../..$(VARDIR)/lib/sgml/CATALOG.openjade $(PROTOUSRSHAREDIR)/sgml/CATALOG.jade_dsl ; \ $(INSTALL) -d $(PROTOUSRSHAREDIR)/sgml/James_Clark/dtd ; \ $(INSTALL) -d $(PROTOUSRSHAREDIR)/sgml/OpenJade/dtd ; \ $(INSTALL) -d $(PROTOUSRSHAREDIR)/sgml/ISO_IEC_10179:1996/dtd ; \ $(SYMLINK) ../../openjade/jade_style-sheet.dtd $(PROTOUSRSHAREDIR)/sgml/James_Clark/dtd/DSSSL_Style_Sheet ; \ $(SYMLINK) ../../openjade/fot.dtd $(PROTOUSRSHAREDIR)/sgml/James_Clark/dtd/DSSSL_Flow_Object_Tree ; \ $(SYMLINK) ../../openjade/style-sheet.dtd $(PROTOUSRSHAREDIR)/sgml/OpenJade/dtd/DSSSL_Style_Sheet ; \ $(SYMLINK) ../../openjade/dsssl.dtd $(PROTOUSRSHAREDIR)/sgml/ISO_IEC_10179:1996/dtd/DSSSL_Architecture ; \ cd $(PROTOUSRSHAREDIR)/sgml/openjade && \ $(SYMLINK) ../opensp/japan.dcl . && \ $(SYMLINK) ../opensp/opensp-implied.dcl sp_implied.dcl && \ $(SYMLINK) ../opensp/xml.dcl . && \ $(SYMLINK) ../opensp/xml.soc . && \ for d in *.dcl ; do \ rm -f $${d/.dcl/.decl} ; \ $(SYMLINK) $$d $${d/.dcl/.decl} ; \ done ; # Testing currently fails COMPONENT_TEST_DIR = $(@D)/testsuite COMPONENT_TEST_TARGETS = # Auto-generated dependencies REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG) REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG) REQUIRED_PACKAGES += developer/documentation-tool/opensp REQUIRED_PACKAGES += system/library REQUIRED_PACKAGES += system/library/math