pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
smake: Update to 1.5
Module Name: pkgsrc-wip
Committed By: Michael Baeuerle <micha%NetBSD.org@localhost>
Pushed By: micha
Date: Wed Jun 23 12:32:24 2021 +0200
Changeset: 9a4819056b4e982bc810ed2d6fc99669d6ffd66d
Modified Files:
Makefile
Added Files:
smake/COMMIT_MSG
smake/DESCR
smake/Makefile
smake/Makefile.common
smake/PLIST
smake/distinfo
Log Message:
smake: Update to 1.5
Changelog from AN-2021-05-19:
- smake: smake "MACRO += value" now works.
smake did implement command line macros like "MACRO=value" since
spring 1996 but did not yet support "MACRO +=value" as well.
- smake: smake "MACRO::=value" "MACRO:::=value", "MACRO +:= value"
now work as well.
- smake: The man page now mentions the new command line macro operators
::=, :::=, += and +:=
- smake: Version bumped to 1.5
Changelog from AN-2021-06-07:
- smake: the MAKEFLAGS parser has been enhanced to understand the
encoding used by the BSD make program "bmake". This is needed to
support something like "bmake INS_BASE=xxx" on FreeBSD while
compiling the schilytools.
.
This parser enhancement also covers some incompatibilities with
the MAKEFLAGS= values created by SunPro Make (e.g. a missing --
before the make macro definitions are added).
Thanks to Robert Clausecker for reporting.
- smake: The smake man page now also mentions SunPro make as dmake(1)
and make(1s) in the "SEE ALSO" section.
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=9a4819056b4e982bc810ed2d6fc99669d6ffd66d
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
smake/COMMIT_MSG | 28 ++++++++++++++++
smake/DESCR | 3 ++
smake/Makefile | 44 ++++++++++++++++++++++++
smake/Makefile.common | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++
smake/PLIST | 4 +++
smake/distinfo | 6 ++++
7 files changed, 178 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index d4eaba7370..427b7f521d 100644
--- a/Makefile
+++ b/Makefile
@@ -5177,6 +5177,7 @@ SUBDIR+= slurm-wlm-devel
SUBDIR+= sm-change_ldappass
SUBDIR+= sm-change_qldforward
SUBDIR+= sm-compatibility
+SUBDIR+= smake
SUBDIR+= smallbasic
SUBDIR+= smallbasic-gui
SUBDIR+= smap
diff --git a/smake/COMMIT_MSG b/smake/COMMIT_MSG
new file mode 100644
index 0000000000..661a892607
--- /dev/null
+++ b/smake/COMMIT_MSG
@@ -0,0 +1,28 @@
+Changelog from AN-2021-05-19:
+- smake: smake "MACRO += value" now works.
+
+ smake did implement command line macros like "MACRO=value" since
+ spring 1996 but did not yet support "MACRO +=value" as well.
+
+- smake: smake "MACRO::=value" "MACRO:::=value", "MACRO +:= value"
+ now work as well.
+
+- smake: The man page now mentions the new command line macro operators
+ ::=, :::=, += and +:=
+
+- smake: Version bumped to 1.5
+
+Changelog from AN-2021-06-07:
+- smake: the MAKEFLAGS parser has been enhanced to understand the
+ encoding used by the BSD make program "bmake". This is needed to
+ support something like "bmake INS_BASE=xxx" on FreeBSD while
+ compiling the schilytools.
+
+ This parser enhancement also covers some incompatibilities with
+ the MAKEFLAGS= values created by SunPro Make (e.g. a missing --
+ before the make macro definitions are added).
+
+ Thanks to Robert Clausecker for reporting.
+
+- smake: The smake man page now also mentions SunPro make as dmake(1)
+ and make(1s) in the "SEE ALSO" section.
diff --git a/smake/DESCR b/smake/DESCR
new file mode 100644
index 0000000000..01683297a2
--- /dev/null
+++ b/smake/DESCR
@@ -0,0 +1,3 @@
+Schily make
+
+Highly portable UNIX make implementation written by Joerg Schilling.
diff --git a/smake/Makefile b/smake/Makefile
new file mode 100644
index 0000000000..d1385b9bb4
--- /dev/null
+++ b/smake/Makefile
@@ -0,0 +1,44 @@
+# $NetBSD$
+
+DISTNAME= schily-2021-06-07
+PKGNAME= smake-1.5
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=schilytools/}
+EXTRACT_SUFX= .tar.bz2
+
+MAINTAINER= micha%NetBSD.org@localhost
+HOMEPAGE= https://sourceforge.net/projects/schilytools/
+COMMENT= Highly portable UNIX make implementation
+LICENSE= cddl-1.0
+
+MAKE_JOBS_SAFE= no
+MAKE_FLAGS+= GMAKE_NOWARN=true
+
+USE_TOOLS+= gmake
+MAKE_FLAGS+= DESTDIR=${DESTDIR} INS_BASE=${PREFIX} DEFMANBASE=. MANDIR=${PKGMANDIR}
+# Honor CPPFLAGS, CFLAGS and LDFLAGS
+MAKE_FLAGS+= CPPOPTX=${CPPFLAGS:Q} COPTX=${CFLAGS:Q} LDOPTX=${LDFLAGS:Q}
+
+.include "../../mk/bsd.prefs.mk"
+
+# Platform specific code (for sharing with other packages based on schilytools)
+.include "Makefile.common"
+
+SUBST_CLASSES+= man
+SUBST_STAGE.man= pre-configure
+SUBST_FILES.man= smake/smake.1
+SUBST_SED.man= -e "s,/opt/schily/share/lib/smake/defaults.smk,${PREFIX}/share/lib/smake/defaults.smk,g"
+SUBST_MESSAGE.man= Fix path for default rules in manpage.
+
+do-configure:
+ cd ${WRKSRC}/inc && ${MAKE_PROGRAM} ${MAKE_FLAGS}
+
+do-build:
+ cd ${WRKSRC}/libschily && ${MAKE_PROGRAM} ${MAKE_FLAGS}
+ cd ${WRKSRC}/smake && ${MAKE_PROGRAM} ${MAKE_FLAGS}
+
+# Documentation is in ${WRKSRC}/README.compile
+do-install:
+ cd ${WRKSRC}/smake && ${MAKE_PROGRAM} ${MAKE_FLAGS} install
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/smake/Makefile.common b/smake/Makefile.common
new file mode 100644
index 0000000000..1b6ebb9a32
--- /dev/null
+++ b/smake/Makefile.common
@@ -0,0 +1,92 @@
+# $NetBSD$
+# used by archivers/star/Makefile
+# used by devel/smake/Makefile
+# used by security/mdigest/Makefile
+# used by shells/bosh/Makefile
+# used by shells/pbosh/Makefile
+
+# All packages based on the schilytools tarball should include this Makefile
+# fragment to inherit and share the same pkgsrc platform specific code.
+
+# Map PKGSRC_COMPILER to CCOM used by schilytools build system.
+.if !empty(PKGSRC_COMPILER:Mgcc)
+MAKE_FLAGS+= CCOM=gcc
+.elif !empty(PKGSRC_COMPILER:Mclang)
+MAKE_FLAGS+= CCOM=clang
+# Other compilers are currently untested, try to use them as cc
+.else
+MAKE_FLAGS+= CCOM=cc
+.endif
+
+# OS rules
+# Some rules were copied from old packages (that are now part of schilytools
+# too) to not break what people have done in the past.
+pre-configure:
+ printf "Create OS rules...\n"
+ cd ${WRKSRC}/RULES && . ${WRKSRC}/RULES/MKLINKS
+ printf "Create pkgsrc OS rules...\n"
+ cd ${WRKSRC}/RULES && unset r ; \
+ for i in arm mipsel mips64eb x86_64 sparc64 powerpc ; \
+ do \
+ r="$$r i386-netbsd-gcc.rul@$$i-netbsd-gcc.rul" ; \
+ r="$$r i386-netbsd-cc.rul@$$i-netbsd-cc.rul" ; \
+ done ; \
+ r="$$r i386-freebsd-gcc.rul@x86_64-freebsd-gcc.rul" ; \
+ r="$$r i386-freebsd-cc.rul@x86_64-freebsd-cc.rul" ; \
+ for i in netbsd-clang.rul netbsd-cc.rul netbsd-gcc.rul ; \
+ do \
+ r="$$r i386-$$i@${MACHINE}-$$i" ; \
+ done ; \
+ \
+ for i in $$r ; \
+ do \
+ existing=`printf "%s\\n" $$i | ${SED} -e 's/@.*//'` ; \
+ target=`printf "%s\\n" $$i | ${SED} -e 's/.*@//'` ; \
+ printf "%s " "$$target"; \
+ if ${TEST} -e "$$existing" ; then : ; \
+ else \
+ printf "(Link target %s not present)\n" \
+ "$$existing"; \
+ continue ; \
+ fi; \
+ if ${TEST} -e "$$target" ; \
+ then \
+ printf "(already present)\n" ; \
+ else \
+ ${LN} -s "$$existing" "$$target" ; \
+ printf "(created)\n" ; \
+ fi; \
+ done
+
+# Man pages with documentation of file formats should go to section 4 on
+# SysV based systems. All supported systems that are treated by schilytools
+# with "MANSTYLE= sysv" in the RULES/os-${OPSYS}.def" files must be caught
+# by this check (IRIX and OSF/1 are treated with BSD style by schilytools).
+PLIST_VARS+= bsd sysv
+.if ${OPSYS} == "AIX" || \
+ ${OPSYS} == "HPUX" || \
+ ${OPSYS} == "SunOS"
+PLIST.sysv= yes
+.else
+PLIST.bsd= yes
+.endif
+
+# tbl(1) of NetBSD 9 cannot be used and cripples the man pages, but man(1)
+# from mandoc uses a builtin tbl that is good enough.
+# This check should catch all supported OS that needs processed tables for
+# man pages and have a tbl that can be used to do that.
+.if ${OPSYS} == "AIX" || \
+ ${OPSYS} == "Cygwin" || \
+ ${OPSYS} == "Darwin" || \
+ ${OPSYS} == "DragonFly" || \
+ ${OPSYS} == "Haiku" || \
+ ${OPSYS} == "HPUX" || \
+ ${OPSYS} == "IRIX" || \
+ ${OPSYS} == "Linux" || \
+ ${OPSYS} == "Minix" || \
+ ${OPSYS} == "MirBSD" || \
+ ${OPSYS} == "OSF1" || \
+ ${OPSYS} == "QNX" || \
+ ${OPSYS} == "SunOS"
+USE_TOOLS+= tbl
+.endif
diff --git a/smake/PLIST b/smake/PLIST
new file mode 100644
index 0000000000..0955e0b20f
--- /dev/null
+++ b/smake/PLIST
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST,v 1.2 2019/10/04 13:32:05 micha Exp $
+bin/smake
+man/man1/smake.1
+share/lib/smake/defaults.smk
diff --git a/smake/distinfo b/smake/distinfo
new file mode 100644
index 0000000000..87b0b12d22
--- /dev/null
+++ b/smake/distinfo
@@ -0,0 +1,6 @@
+$NetBSD$
+
+SHA1 (schily-2021-06-07.tar.bz2) = 355c162afdffb730e632902620397cc7851c3595
+RMD160 (schily-2021-06-07.tar.bz2) = 8239c965ad9da0d7ce21c39ed28f3f367f929cbf
+SHA512 (schily-2021-06-07.tar.bz2) = f71fb7b521e1b39e87ec9e44b29576eb2e67f0783e24760590f4323243ee1df7e7bdc214aa95d9e3cde6d090c14cab85ddfeaa8ea93b3942997c72c257b53a60
+Size (schily-2021-06-07.tar.bz2) = 4905609 bytes
Home |
Main Index |
Thread Index |
Old Index