523aab3a1d
1.0.0 2021-05-09 Release -------------------------- Important notes: - The new configuration data format is not compatible with versions 0.x (indicated by the major number bump)! A script is provided to automatically convert existing configuration data to the new format. Read "migration/README" for details. - Because the location of the configuration has changed (see new XDG module below), the configuration for versions 0.x is preserved. - It is still possible to downgrade flnews to 0.x, the preserved old configuration data is used again in this case. - Now the release version contains 3 numbers "x.y.z" Major (x) indicates compatibility with configuration data Minor (y) is incremented for new features Patch (z) is incremented for bug fixes Bug fixes: - CORE: Request for group information is no longer rejected with error if the group list is empty. - GUI: After unsubscribing the last group, the article tree/list was not cleared and the user can click on articles for which the associated data no longer exists. Such operations will crash the program (reported by Martin Schnitkemper). - CORE: Line length limit (998 octets) is now checked before injection. - GUI: On macOS with system menu bar the status updates to menu entry "Group->Sort by article number" work now (patch from Dennis Preiser). The required method update() is not available with old FLTK 1.3 libraries, the option CFG_COCOA_SYS_MENUBAR now requires FLTK 1.4. - ENC: URI percent encoder for scheme <news> fixed: The characters defined as <gen-delims> (RFC 3986 Section 2.2) are now encoded (reported by Marcel Logen). - GUI: The URI parser now accepts empty <host> for scheme <news>. - GUI: The current group selection is now restored after a click into the empty space below the group list (reported by Christian Schumacher). - GUI: The article list/tree is now cleared after selecting an empty group (formerly articles of an unrelated group may still be visible). - GUI: Some FLTK versions accept selection of deactivated items. There is now a workaround implemented to make such selections nonfatal. - GUI: Horizontal scrolling to highlighted result of search fixed. - GUI: Use FLTK default forground color for group subscription window too. This should make the content readable with dark background (reported by Christian Schumacher). - NLS: German translation "Artikel herunterladen fehlgeschlagen" fixed (reported by Marcel Logen). - GUI: If there are multiple signature separators ("-- ") present, now the last one is used according to "Usenet Best Practice" draft 01 (reported by Marcel Logen). New features and improvements: - XDG: Moved default configuration directory to location defined by XDG Base Directory Specification 0.7 ("$XDG_CONFIG_HOME/$CFG_NAME"). Other modules now ask the XDG module for the configuration path. - MAIN: The new command line option "-confprefix" can be used to override the configuration directory (proposed by Helmut Waitzmann). - GUI: It is now possible to mark all articles in all groups as read (menu entry "Group->Mark all groups as read"). - MAIN: New command line option "-debug" to enable debug mode early. - CONF: configfile entry "domain" replaced with "fqdn". Some users saw the hostname field in Message-ID algorithm A1 as privacy problem. A <dot-atom> can be configured for the new entry "fqdn" (should be a fully qualified domain name, but without root domain). It is used as <id-right> element when a Message-ID is created with algorithm A2. - Support for SOURCE_DATE_EPOCH Specification 1.1 added to build system. Reproducible build option CFG_REPRODUCIBLE removed from CONFIG. The SOURCE_DATE_EPOCH variable from the environment now overrides the dates in the GUI, the output of the "-v" command line option and the man pages (original patch from Bernhard M. Wiedemann). - Support for target "install-strip" added to build system. The target "install" no longer strips unnecessary symbols from binaries (proposed by Martin Schnitkemper). - EXT: Support for external inews added. Pathname can be specified with the new "inews" entry in configfile. - TLS: Protocol versions 1.0 and 1.1 are now disabled as required by RFC 8996. Both versions are still available in "weak" encryption mode. - GUI: New menu entry "Group->Mark subthread as read". - GUI: If there is only one entity to display for a MIME multipart message (e.g. the selected one with multipart/alternative), the entity header is now displayed too. - GUI: An initial greeting phrase can now be specified with the new "initial_greeting" entry in configfile. It is inserted into articles that start a new thread (proposed by Wolfgang Bauer). - FUTIL: Function added to create (multiple) missing directories of a path. - FILTER: New scorefile syntax to eliminate the workaround with type "extended". All score rules now have a wildmat in the first field. - FILTER: Simplified default regex for test group detection to "\.test$|^test$", removing the ".*" part at the beginning (proposed by Urs Janßen). - POSIX: Support for POSIX.1-2008 and SUSv4 added. No local replacement functions are used anymore on modern operating systems. snprintf() replacement function now uses SUSv4 semantics. - ENC: MIME encoded-words are now generated with "US-ASCII" charset declaration if there is no 8-bit data to encode in the header field (e.g. to represent words like " =?-?= " in a RFC 2049 conformant way). This follows the "lowest common denominator" principle decribed in RFC 2046 Section 4.1.2. - TLS: Deprecated functions from OpenSSL 3 API are no longer used. - GUI: Modified question popup windows to handle pressing ESC key as "No" or "Reject" respectively. - GUI: Some entries moved from menu "Article" to "Group".
88 lines
2.9 KiB
Makefile
88 lines
2.9 KiB
Makefile
# $NetBSD: Makefile,v 1.12 2021/05/17 11:01:34 micha Exp $
|
|
|
|
FLNEWS_VERSION= 1.0.0
|
|
|
|
DISTNAME= flnews-${FLNEWS_VERSION}
|
|
CATEGORIES= news
|
|
MASTER_SITES= http://micha.freeshell.org/flnews/src/
|
|
MASTER_SITES+= http://www.ybtra.de/flnews-mirror/src/
|
|
MASTER_SITES+= http://www.southcity.de/flnews/src/
|
|
EXTRACT_SUFX= .tar.bz2
|
|
|
|
MAINTAINER= micha@NetBSD.org
|
|
HOMEPAGE= https://micha.freeshell.org/flnews/
|
|
COMMENT= Fast and lightweight USENET newsreader with GUI
|
|
LICENSE= modified-bsd AND 2-clause-bsd AND unicode
|
|
|
|
USE_LANGUAGES= c c++
|
|
|
|
TEST_TARGET= test
|
|
|
|
# https://reproducible-builds.org/specs/source-date-epoch/
|
|
CONFIGURE_ENV+= SOURCE_DATE_EPOCHE=1620580800
|
|
|
|
# Bug report contact address used for GUI
|
|
FLNEWS_MAINTAINER= ${MAINTAINER}
|
|
|
|
.include "options.mk"
|
|
|
|
# Prepare CONFIG file
|
|
SUBST_CLASSES+= edit-config
|
|
SUBST_STAGE.edit-config= pre-configure
|
|
SUBST_MESSAGE.edit-config= Preparing CONFIG file ...
|
|
SUBST_FILES.edit-config= CONFIG
|
|
SUBST_SED.edit-config= -e 's,@VERSION@,${FLNEWS_VERSION},g'
|
|
SUBST_VARS.edit-config= PREFIX
|
|
SUBST_SED.edit-config+= -e 's,@MAINT@,${FLNEWS_MAINTAINER},g'
|
|
SUBST_SED.edit-config+= -e 's,@IP6@,${FLNEWS_OPT_DISABLE_IP6},g'
|
|
SUBST_SED.edit-config+= -e 's,@NLS@,${FLNEWS_OPT_DISABLE_NLS},g'
|
|
SUBST_SED.edit-config+= -e 's,@XDBE@,${FLNEWS_OPT_DISABLE_XDBE},g'
|
|
SUBST_SED.edit-config+= -e 's,@MAN_PATH@,${PREFIX}/${PKGMANDIR},g'
|
|
.if ${FLNEWS_OPT_DISABLE_XDG} == 0
|
|
SUBST_SED.edit-config+= -e 's,@XDG@,0,g'
|
|
.else
|
|
SUBST_SED.edit-config+= -e 's,@XDG@,1,g'
|
|
.endif
|
|
# NetBSD reports X/Open XSI extension as not available using the POSIX
|
|
# sysconf(_SC_XOPEN_VERSION) call, but has a sufficient implementation
|
|
# => Force using it
|
|
.if ${OPSYS} == "NetBSD"
|
|
SUBST_SED.edit-config+= -e 's,@FORCE_XSI@,1,g'
|
|
.else
|
|
SUBST_SED.edit-config+= -e 's,@FORCE_XSI@,0,g'
|
|
.endif
|
|
# NetBSD reports IPv6 as not available using the POSIX sysconf(_SC_IPV6)
|
|
# call, but has a sufficient implementation
|
|
# => Force using it if inet6 option of pkgsrc package is selected
|
|
.if ${OPSYS} == "NetBSD" && ${FLNEWS_OPT_DISABLE_IP6} == 0
|
|
SUBST_SED.edit-config+= -e 's,@FORCE_IP6@,1,g'
|
|
.else
|
|
SUBST_SED.edit-config+= -e 's,@FORCE_IP6@,0,g'
|
|
.endif
|
|
# Old SunPro compilers cannot create dependencies with the "-M" option
|
|
# => Use makedepend instead for all SunPro compilers
|
|
.if ${OPSYS} == "SunOS" && ${PKGSRC_COMPILER:Msunpro}
|
|
SUBST_SED.edit-config+= -e 's,@DEP_MD@,,g'
|
|
SUBST_SED.edit-config+= -e 's,@DEP_COMP@,\#,g'
|
|
.else
|
|
SUBST_SED.edit-config+= -e 's,@DEP_MD@,\#,g'
|
|
SUBST_SED.edit-config+= -e 's,@DEP_COMP@,,g'
|
|
.endif
|
|
|
|
post-extract:
|
|
${CP} ${FILESDIR}/CONFIG ${WRKSRC}
|
|
|
|
do-configure:
|
|
cd ${WRKSRC} && \
|
|
${SETENV} ${CONFIGURE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} config
|
|
|
|
.if ${OPSYS} == "SunOS" && ${PKGSRC_COMPILER:Msunpro}
|
|
BUILD_DEPENDS+= makedepend-[0-9]*:../../devel/makedepend
|
|
.endif
|
|
|
|
BUILDLINK_API_DEPENDS.zlib+= zlib>=1.2.3
|
|
.include "../../devel/zlib/buildlink3.mk"
|
|
.include "../../security/openssl/buildlink3.mk"
|
|
.include "../../x11/fltk13/buildlink3.mk"
|
|
.include "../../mk/pthread.buildlink3.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|