On 2020/12/21 12:05, joshua stein wrote: > SyncTERM is a BBS terminal program with lots of features.
: diff dc4fde7aa1c4036ccebf62b44d24003e25253271 /usr/ports/mystuff : blob - 91eac5d8f890230efc81f1ec74f922025a99668d : file + comms/syncterm/Makefile : --- comms/syncterm/Makefile : +++ comms/syncterm/Makefile : @@ -2,25 +2,27 @@ : : COMMENT= BBS terminal program : : -PKGNAME= syncterm-1.1 : -DISTNAME= ${PKGNAME}-src : +DISTNAME= syncterm-1.1 : HOMEPAGE= http://syncterm.bbsdev.net/ : : -EXTRACT_SUFX= .tgz : +EXTRACT_SUFX= -src.tgz since this unpacks to WRKDIR/syncterm-1.1 this is a neater way to handle it than setting WRKDIST (historically you couldn't rely on PKGNAME in this way as it had p0/p1/... added for port updates; that isn't the case any more as there's some special handling in ports infrastructure, but it still feels wrong to an old porter to use it like this ;) : MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=syncterm/} : : # GPLv2 : PERMIT_PACKAGE= Yes : : -WANTLIB += c curses m ossaudio pthread util : +# sdl2 is dlopen()'d : +WANTLIB += SDL2 c curses m ossaudio pthread util list SDL2 in WANTLIB to make sure that updates to SDL2 trigger an update of this; although it's dlopen()'d it is still built against the SDL headers : : CATEGORIES= comms net : : USE_GMAKE= Yes : +NO_TEST= Yes "make test" tries to build test.c (and fails with missing symbols from X libraries); even if it's setup to run it doesn't seem all that useful as a test anyway so probably simplest to just disable tests for the port : -BUILD_DEPENDS= devel/sdl2 : -# SDL gets dlopen'd at runtime : -RUN_DEPENDS= ${LIB_DEPENDS} : : +LIB_DEPENDS= devel/sdl2 LIB_DEPENDS wasn't set so setting RUN_DEPENDS=${LIB_DEPENDS} didn't do anything. the best way we have to handle this case with dlopen()'d a library is to set in LIB_DEPENDS+WANTLIB with a warning that it's "Extra". : +RUN_DEPENDS= devel/desktop-file-utils \ : + x11/gtk+3,-guic : + needs listing to provide @tag handling for the tags that "make plist" automatically adds. the alternative if you don't like the extra dependencies is to rm the icon and desktop files in post-install, chances are these will already be present on any "desktop-ish" system already though, and it's convenient for people using desktop environments that handle these files. : MAKE_FILE= GNUmakefile : MAKE_FLAGS= RELEASE=1 \ : WITHOUT_CRYPTLIB=1 \ : @@ -31,7 +33,7 @@ CFLAGS+= -DN_CURSES_LIB -D_XOPEN_SOURCE_EXTENDED=1 : : FAKE_FLAGS= PREFIX=${PREFIX} : : -WRKDIST= ${WRKDIR}/${PKGNAME}/src/syncterm : +WRKSRC= ${WRKDIST}/src/syncterm WRKDIST is the "source unpacks here" dir and apart from anything else is used as the base dir for patches; there's a forced -O2 which ought to be patched away (added in my updated tar) WRKSRC is "cd to this dir before building" which is what's needed here : : post-install: : gzip -d ${PREFIX}/man/man1/syncterm.1.gz : this updated version is ok with me to import..
syncterm.tgz
Description: application/tar-gz