aboutsummaryrefslogtreecommitdiff
path: root/deskutils/remind
diff options
context:
space:
mode:
Diffstat (limited to 'deskutils/remind')
-rw-r--r--deskutils/remind/Makefile126
-rw-r--r--deskutils/remind/distinfo6
-rw-r--r--deskutils/remind/files/extra-patch-configure.in10
-rw-r--r--deskutils/remind/files/patch-rem2html_Makefile.in29
-rw-r--r--deskutils/remind/files/patch-src_Makefile16
-rw-r--r--deskutils/remind/files/patch-src_Makefile.in25
-rw-r--r--deskutils/remind/pkg-descr2
-rw-r--r--deskutils/remind/pkg-plist45
8 files changed, 174 insertions, 85 deletions
diff --git a/deskutils/remind/Makefile b/deskutils/remind/Makefile
index da2250823d98..e0127e3f9fc6 100644
--- a/deskutils/remind/Makefile
+++ b/deskutils/remind/Makefile
@@ -1,33 +1,43 @@
-# Created by: Lewis Thompson <purple@lewiz.net>
-
PORTNAME= remind
-DISTVERSION= 03.03.08
+DISTVERSION= 04.03.07
CATEGORIES= deskutils
-MASTER_SITES= https://dianne.skoll.ca/projects/remind/download/
+# upstream moves distfiles to OLD once a new release appears
+MASTER_SITES= https://dianne.skoll.ca/projects/remind/download/ \
+ https://dianne.skoll.ca/projects/remind/download/OLD/
-MAINTAINER= fuz@fuz.su
+MAINTAINER= fuz@FreeBSD.org
COMMENT= Sophisticated calendar and alarm program
+WWW= https://dianne.skoll.ca/projects/remind/
LICENSE= GPLv2
+USES= autoreconf
+
GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --disable-perl-build-artifacts
+GNU_CONFIGURE_MANPREFIX= ${PREFIX}/share
MAKE_ARGS= INSTALL_SCRIPT="${INSTALL_SCRIPT}"
+INSTALL_TARGET= ${WITH_DEBUG:Dinstall:Uinstall-stripped}
+TEST_TARGET= test
-PLIST_FILES= bin/rem \
- bin/rem2ps \
- bin/remind \
- man/man1/rem.1.gz \
- man/man1/rem2ps.1.gz \
- man/man1/remind.1.gz
+# disable LTO on riscv64
+EXTRA_PATCHES_riscv64= ${FILESDIR}/extra-patch-configure.in
+EXTRA_PATCHES= ${EXTRA_PATCHES_${ARCH}}
-OPTIONS_DEFINE= TCLTK A4
-OPTIONS_DEFAULT=LANG_US
+OPTIONS_DEFINE= A4 TCLTK REM2HTML REM2PDF
+OPTIONS_DEFAULT= LANG_US REM2HTML REM2PDF
OPTIONS_SINGLE= LANGUAGE
-OPTIONS_SINGLE_LANGUAGE= LANG_US LANG_DE LANG_NL LANG_FI LANG_FR LANG_NN \
- LANG_DA LANG_PL LANG_PBR LANG_IT LANG_RO LANG_ES LANG_IS
+OPTIONS_SINGLE_LANGUAGE= LANG_US LANG_DE LANG_NL LANG_FI LANG_FR \
+ LANG_NN LANG_DA LANG_PL LANG_PBR LANG_IT \
+ LANG_RO LANG_ES LANG_IS
+OPTIONS_SUB= yes
A4_DESC= Use A4 instead of Letter paper
LANGUAGE_DESC= User interface language
+REM2HTML_DESC= Build and install rem2html (requires Perl)
+REM2PDF_DESC= Build and install rem2pdf (requires Perl)
+# do not sort these -- correspond to enumeration in source code
+LANG.US= ENGLISH
LANG.DE= GERMAN
LANG.NL= DUTCH
LANG.FI= FINNISH
@@ -40,64 +50,52 @@ LANG.IT= ITALIAN
LANG.RO= ROMANIAN
LANG.ES= SPANISH
LANG.IS= ICELANDIC
+CFLAGS+= -DLANG=${${PORT_OPTIONS:MLANG_*:S/_/./}}
TCLTK_USES= tk
TCLTK_RUN_DEPENDS= dtplite:devel/tcllib
-TCLTK_PLIST_FILES= bin/cm2rem.tcl \
- bin/tkremind \
- man/man1/cm2rem.1.gz \
- man/man1/tkremind.1.gz
+
+REM2HTML_USES= perl5
+REM2HTML_RUN_DEPENDS= p5-JSON-MaybeXS>0:converters/p5-JSON-MaybeXS
+
+REM2PDF_USES= perl5
+REM2PDF_RUN_DEPENDS= p5-Cairo>0:graphics/p5-Cairo \
+ p5-Pango>0:x11-toolkits/p5-Pango
+
+# hard wired customisation variables
+DEFAULT_LATITUDE?= 45.42055555555555
+DEFAULT_LONGITUDE?= -75.68972222222223
+LOCATION?= Ottawa
.include <bsd.port.options.mk>
-.if "${PORT_OPTIONS:MLANG_*}" != "" && "${PORT_OPTIONS:MLANG_*}" != LANG_US
-CFLAGS+= -DLANG=${${PORT_OPTIONS:MLANG_*:S/_/./}}
-.endif
-
-post-patch:
-# This seems more than a little ugly.
-.if defined(LAT_DEG)
- @${REINPLACE_CMD} -e 's#LAT_DEG 45#LAT_DEG ${LAT_DEG}#' ${WRKSRC}/src/custom.h
-.endif
-.if defined(LAT_MIN)
- @${REINPLACE_CMD} -e 's#LAT_MIN 24#LAT_MIN ${LAT_MIN}#' ${WRKSRC}/src/custom.h
-.endif
-.if defined(LAT_SEC)
- @${REINPLACE_CMD} -e 's#LAT_SEC 0#LAT_SEC ${LAT_SEC}#' ${WRKSRC}/src/custom.h
-.endif
-.if defined(LON_DEG)
- @${REINPLACE_CMD} -e 's#LON_DEG 75#LON_DEG ${LON_DEG}#' ${WRKSRC}/src/custom.h
-.endif
-.if defined(LON_MIN)
- @${REINPLACE_CMD} -e 's#LON_MIN 39#LON_MIN ${LON_MIN}#' ${WRKSRC}/src/custom.h
-.endif
-.if defined(LON_SEC)
- @${REINPLACE_CMD} -e 's#LON_SEC 0#LON_SEC ${LON_SEC}#' ${WRKSRC}/src/custom.h
-.endif
-.if defined(LOCATION)
- @${REINPLACE_CMD} -e 's#Ottawa#${LOCATION}#' ${WRKSRC}/src/custom.h
-.endif
-.if defined(A4) || ${PORT_OPTIONS:MA4}
+pre-configure:
+ @${REINPLACE_CMD} \
+ -e 's#DEFAULT_LATITUDE 39#DEFAULT_LATITUDE ${DEFAULT_LATITUDE}#' \
+ -e 's#DEFAULT_LONGITUDE 39#DEFAULT_LONGITUDE ${DEFAULT_LONGITUDE}#' \
+ -e 's#Ottawa#${LOCATION}#' ${WRKSRC}/src/custom.h
+
+pre-configure-A4-on:
@${REINPLACE_CMD} -e 's#"Letter", 612, 792#"A4", 595, 842#' ${WRKSRC}/src/custom.h
-.endif
-.if ${PORT_OPTIONS:MTCLTK}
+
+pre-configure-TCLTK-on:
@${REINPLACE_CMD} -e 's,wish,${WISH},' ${WRKSRC}/scripts/tkremind
- @${REINPLACE_CMD} -e 's,tclsh,${TCLSH},' ${WRKSRC}/scripts/cm2rem.tcl
-.endif
+
+do-build:
+ cd ${WRKSRC}/src && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} all
do-install:
-.for i in rem2ps remind
- ${INSTALL_PROGRAM} ${WRKSRC}/src/${i} ${STAGEDIR}${PREFIX}/bin
- ${INSTALL_MAN} ${WRKSRC}/man/${i}.1 ${STAGEDIR}${PREFIX}/man/man1
-.endfor
- ${INSTALL_MAN} ${WRKSRC}/man/rem.1 ${STAGEDIR}${PREFIX}/man/man1
- ${LN} -sf ../bin/remind ${STAGEDIR}${PREFIX}/bin/rem
-.if ${PORT_OPTIONS:MTCLTK}
- ${INSTALL_SCRIPT} ${WRKSRC}/scripts/cm2rem.tcl ${STAGEDIR}${PREFIX}/bin
- ${INSTALL_SCRIPT} ${WRKSRC}/scripts/tkremind ${STAGEDIR}${PREFIX}/bin
-.for i in cm2rem tkremind
- ${INSTALL_MAN} ${WRKSRC}/man/${i}.1 ${STAGEDIR}${PREFIX}/man/man1
-.endfor
-.endif
+ cd ${WRKSRC}/src && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}
+
+do-install-REM2HTML-on:
+ cd ${WRKSRC}/rem2html && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} install
+
+do-install-REM2PDF-on:
+ cd ${WRKSRC}/rem2pdf && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} Makefile.top ${MAKE_ARGS} all
+ cd ${WRKSRC}/rem2pdf && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} Makefile.top ${MAKE_ARGS} install
+
+post-install-TCLTK-off:
+ ${RM} ${STAGEDIR}${PREFIX}/bin/tkremind
+ ${RM} ${STAGEDIR}${PREFIX}/man/man1/tkremind.1
.include <bsd.port.mk>
diff --git a/deskutils/remind/distinfo b/deskutils/remind/distinfo
index 876c238db2ee..cb3372b4319e 100644
--- a/deskutils/remind/distinfo
+++ b/deskutils/remind/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1631630542
-SHA256 (remind-03.03.08.tar.gz) = 25ea12cd914b7d4aecc5731b5bcb81295c0e3df963d86b9171a4eca145b7b788
-SIZE (remind-03.03.08.tar.gz) = 407339
+TIMESTAMP = 1714912936
+SHA256 (remind-04.03.07.tar.gz) = b3f8c4b0d5d406280d1cf4c28b77b8576a4650d84adace7f9feb14d68c3b514d
+SIZE (remind-04.03.07.tar.gz) = 532447
diff --git a/deskutils/remind/files/extra-patch-configure.in b/deskutils/remind/files/extra-patch-configure.in
new file mode 100644
index 000000000000..bac6c6366f21
--- /dev/null
+++ b/deskutils/remind/files/extra-patch-configure.in
@@ -0,0 +1,10 @@
+--- configure.in.orig 2022-10-13 14:15:40 UTC
++++ configure.in
+@@ -51,7 +51,6 @@ if test "$GCC" = yes; then
+ AC_MSG_CHECKING([whether $CC supports $f])
+ if $CC -E $f /dev/null > /dev/null 2>&1 ; then
+ AC_MSG_RESULT([yes])
+- CFLAGS="$CFLAGS $f"
+ else
+ AC_MSG_RESULT([no])
+ fi
diff --git a/deskutils/remind/files/patch-rem2html_Makefile.in b/deskutils/remind/files/patch-rem2html_Makefile.in
new file mode 100644
index 000000000000..f2b86a153b8a
--- /dev/null
+++ b/deskutils/remind/files/patch-rem2html_Makefile.in
@@ -0,0 +1,29 @@
+--- rem2html/Makefile.in.orig 2022-02-10 22:15:01 UTC
++++ rem2html/Makefile.in
+@@ -12,17 +12,15 @@ all:
+ true
+
+ install:
+- @if test "$(PERL)" = "" ; then \
+- echo "Not installing rem2html; Perl is required"; exit 0; fi; \
+- for m in $(PERLMODS_NEEDED) ; \
+- do \
+- $(PERL) -M$$m -e 1 > /dev/null 2>&1; \
+- if test $$? != 0 ; then echo "Not installing rem2html; missing $$m"; exit 0; fi; \
+- done; \
+- pod2man --center "VERSION @VERSION@" --date "@RELEASE_DATE@" rem2html > rem2html.1 && mkdir -p $(DESTDIR)$(mandir)/man1 && cp rem2html.1 $(DESTDIR)$(mandir)/man1/rem2html.1 || true; \
+- echo "Installing rem2html in $(DESTDIR)$(bindir)"; \
+- mkdir -p $(DESTDIR)$(bindir) && sed -e 's|^#!perl|#!$(PERL)|' < rem2html > $(DESTDIR)$(bindir)/rem2html && chmod 755 $(DESTDIR)$(bindir)/rem2html && exit 0; \
+- exit 1;
++ @for m in $(PERLMODS_NEEDED) ; \
++ do \
++ $(PERL) -M$$m -e 1 ; \
++ done
++ pod2man --center "VERSION @VERSION@" --date "@RELEASE_DATE@" rem2html > rem2html.1 && mkdir -p $(DESTDIR)$(mandir)/man1 && cp rem2html.1 $(DESTDIR)$(mandir)/man1/rem2html.1 || true
++ @echo "Installing rem2html in $(DESTDIR)$(bindir)"
++ mkdir -p $(DESTDIR)$(bindir)
++ sed -e 's|^#!perl|#!$(PERL)|' < rem2html > rem2html.out
++ $(INSTALL_SCRIPT) rem2html.out $(DESTDIR)$(bindir)/rem2html
+
+
+
diff --git a/deskutils/remind/files/patch-src_Makefile b/deskutils/remind/files/patch-src_Makefile
deleted file mode 100644
index f64adc2a990d..000000000000
--- a/deskutils/remind/files/patch-src_Makefile
+++ /dev/null
@@ -1,16 +0,0 @@
---- src/Makefile.in.orig 2007-10-09 19:45:41.000000000 +0300
-+++ src/Makefile.in 2007-10-09 19:46:25.000000000 +0300
-@@ -51,9 +51,12 @@
-
- install-nostripped: all
- -mkdir -p $(DESTDIR)$(bindir) || true
-- for prog in $(PROGS) $(SCRIPTS) ; do \
-+ for prog in $(PROGS) ; do \
- $(INSTALL_PROGRAM) $$prog $(DESTDIR)$(bindir) || exit 1; \
- done
-+ for script in $(SCRIPTS) ; do \
-+ $(INSTALL_SCRIPT) $$script $(DESTDIR)$(bindir) || exit 1; \
-+ done
- rm -f $(DESTDIR)$(bindir)/rem > /dev/null 2>&1 || true
- ln -s remind $(DESTDIR)$(bindir)/rem
- -mkdir -p $(DESTDIR)$(mandir)/man1 || true
diff --git a/deskutils/remind/files/patch-src_Makefile.in b/deskutils/remind/files/patch-src_Makefile.in
new file mode 100644
index 000000000000..8fc98485d7bf
--- /dev/null
+++ b/deskutils/remind/files/patch-src_Makefile.in
@@ -0,0 +1,25 @@
+--- src/Makefile.in.orig 2024-03-01 14:10:26 UTC
++++ src/Makefile.in
+@@ -52,9 +52,12 @@ install: all
+
+ install: all
+ -mkdir -p $(DESTDIR)$(bindir) || true
+- for prog in $(PROGS) $(SCRIPTS) ; do \
++ for prog in $(PROGS) ; do \
+ $(INSTALL_PROGRAM) $$prog $(DESTDIR)$(bindir) || exit 1; \
+ done
++ for script in $(SCRIPTS) ; do \
++ $(INSTALL_SCRIPT) $$script $(DESTDIR)$(bindir) || exit 1; \
++ done
+ rm -f $(DESTDIR)$(bindir)/rem > /dev/null 2>&1 || true
+ ln -s remind $(DESTDIR)$(bindir)/rem
+ -mkdir -p $(DESTDIR)$(mandir)/man1 || true
+@@ -66,7 +69,7 @@ install: all
+ -mkdir -p $(DESTDIR)$(prefix)/share/pixmaps
+ -mkdir -p $(DESTDIR)$(prefix)/share/applications
+ $(INSTALL_DATA) $(srcdir)/../resources/tkremind.png $(DESTDIR)$(prefix)/share/pixmaps
+- $(INSTALL_PROGRAM) $(srcdir)/../resources/tkremind.desktop $(DESTDIR)$(prefix)/share/applications
++ $(INSTALL_DATA) $(srcdir)/../resources/tkremind.desktop $(DESTDIR)$(prefix)/share/applications
+ -if test "$(DESTDIR)" = ""; then \
+ update-desktop-database < /dev/null > /dev/null 2>&1 ; \
+ xdg-icon-resource install --novendor --size 64 $(DESTDIR)$(prefix)/share/pixmaps/tkremind.png < /dev/null > /dev/null 2>&1; \
diff --git a/deskutils/remind/pkg-descr b/deskutils/remind/pkg-descr
index b470c18d1104..6a9313bca5bb 100644
--- a/deskutils/remind/pkg-descr
+++ b/deskutils/remind/pkg-descr
@@ -9,5 +9,3 @@ following features:
the scripting language.
* Facilities for both the Gregorian and Hebrew calendars.
* Support for 12 different languages.
-
-WWW: https://dianne.skoll.ca/projects/remind/
diff --git a/deskutils/remind/pkg-plist b/deskutils/remind/pkg-plist
new file mode 100644
index 000000000000..a70b7b516509
--- /dev/null
+++ b/deskutils/remind/pkg-plist
@@ -0,0 +1,45 @@
+bin/rem
+%%REM2HTML%%bin/rem2html
+%%REM2PDF%%bin/rem2pdf
+bin/rem2ps
+bin/remind
+%%TCLTK%%bin/tkremind
+%%REM2PDF%%%%SITE_PERL%%/Remind/PDF.pm
+%%REM2PDF%%%%SITE_PERL%%/Remind/PDF/Entry.pm
+%%REM2PDF%%%%PERL5_MAN1%%/rem2pdf.1.gz
+%%REM2PDF%%%%PERL5_MAN3%%/Remind::PDF.3.gz
+%%REM2PDF%%%%PERL5_MAN3%%/Remind::PDF::Entry.3.gz
+share/man/man1/rem.1.gz
+%%REM2HTML%%share/man/man1/rem2html.1.gz
+share/man/man1/rem2ps.1.gz
+share/man/man1/remind.1.gz
+%%TCLTK%%share/man/man1/tkremind.1.gz
+share/applications/tkremind.desktop
+share/pixmaps/tkremind.png
+%%DATADIR%%/ansitext.rem
+%%DATADIR%%/holidays/ca.rem
+%%DATADIR%%/holidays/fr.rem
+%%DATADIR%%/holidays/gr.rem
+%%DATADIR%%/holidays/ie.rem
+%%DATADIR%%/holidays/jewish.rem
+%%DATADIR%%/holidays/pt.rem
+%%DATADIR%%/holidays/us.rem
+%%DATADIR%%/lang/auto.rem
+%%DATADIR%%/lang/ca.rem
+%%DATADIR%%/lang/da.rem
+%%DATADIR%%/lang/de.rem
+%%DATADIR%%/lang/en.rem
+%%DATADIR%%/lang/es.rem
+%%DATADIR%%/lang/fi.rem
+%%DATADIR%%/lang/fr.rem
+%%DATADIR%%/lang/gr.rem
+%%DATADIR%%/lang/is.rem
+%%DATADIR%%/lang/it.rem
+%%DATADIR%%/lang/nl.rem
+%%DATADIR%%/lang/no.rem
+%%DATADIR%%/lang/pl.rem
+%%DATADIR%%/lang/pt.rem
+%%DATADIR%%/lang/ro.rem
+%%DATADIR%%/moonphases.rem
+%%DATADIR%%/seasons.rem
+%%DATADIR%%/site/README