git: 76f2c0607d29 - main - games/eboard: Take maintainership and rework the port a bit

Rainer Hurling rhurlin at FreeBSD.org
Thu May 6 15:12:17 UTC 2021


The branch main has been updated by rhurlin:

URL: https://cgit.FreeBSD.org/ports/commit/?id=76f2c0607d29e6aeaf7fb43dfb74846b50571b68

commit 76f2c0607d29e6aeaf7fb43dfb74846b50571b68
Author:     Rainer Hurling <rhurlin at FreeBSD.org>
AuthorDate: 2021-05-06 14:59:30 +0000
Commit:     Rainer Hurling <rhurlin at FreeBSD.org>
CommitDate: 2021-05-06 15:11:38 +0000

    games/eboard: Take maintainership and rework the port a bit
    
    - Add license
    - Remove nonfunctional joystick option
    - Comment out timeseal link; remove pkg-message for now
    - Remake all patchfiles
    - Change PORT_OPTIONS:MDOCS into post-install-DOCS-on target
    - pkg-descr: Use secured URL
    
    PR:             254278
---
 games/eboard/Makefile               | 46 ++++++++++++++++---------------------
 games/eboard/files/patch-c++11      | 17 --------------
 games/eboard/files/patch-configure  | 14 +++++------
 games/eboard/files/patch-network.cc | 21 ++++++++++++-----
 games/eboard/files/patch-network.h  |  8 +++----
 games/eboard/pkg-descr              |  2 +-
 games/eboard/pkg-message            |  9 --------
 7 files changed, 47 insertions(+), 70 deletions(-)

diff --git a/games/eboard/Makefile b/games/eboard/Makefile
index c39eb84eb9cf..183a2b2b56a4 100644
--- a/games/eboard/Makefile
+++ b/games/eboard/Makefile
@@ -11,34 +11,31 @@ DISTFILES=	${DISTNAME}${EXTRACT_SUFX} \
 		eboard-extras-2.tar.gz:p2
 EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
 
-MAINTAINER=	ports at FreeBSD.org
+MAINTAINER=	rhurlin at FreeBSD.org
 COMMENT=	GTK+ chess board interface (mainly for FICS and chessd)
 
+LICENSE=	GPLv2
+
 LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig \
 		libfreetype.so:print/freetype2 \
 		libpng.so:graphics/png
 
-EXTRAS=		1pl2 2
 USES=		compiler:c++11-lang gnome perl5 pkgconfig shebangfix tar:bzip2
-HAS_CONFIGURE=	yes
-USE_PERL5=	build
+USE_GITHUB=	yes
+GH_ACCOUNT=	fbergo
 USE_GNOME=	cairo gdkpixbuf2 gtk20
 USE_GSTREAMER1=	yes
-SHEBANG_FILES=	configure
+USE_PERL5=	build
 
-USE_GITHUB=	yes
-GH_ACCOUNT=	fbergo
+SHEBANG_FILES=	configure
 
+HAS_CONFIGURE=	yes
 CONFIGURE_ARGS=	--prefix=${PREFIX} \
 		--extra-inc=${LOCALBASE}/include \
 		--extra-ld=${LOCALBASE}/lib
 
 INSTALL_TARGET=	install install-man
 
-OPTIONS_DEFINE=	JOYSTICK DOCS
-JOYSTICK_DESC=	Enable joystick support
-JOYSTICK_BUILD_DEPENDS=	${LOCALBASE}/include/linux/joystick.h:devel/evdev-proto
-
 DESKTOP_ENTRIES="eboard" \
 		"Play chess" \
 		"${PREFIX}/share/pixmaps/eboard.xpm" \
@@ -46,7 +43,9 @@ DESKTOP_ENTRIES="eboard" \
 		"Game;BoardGame;GTK;" \
 		true
 
-.include <bsd.port.options.mk>
+OPTIONS_DEFINE=	DOCS
+
+EXTRAS=		1pl2 2
 
 post-extract:
 .for e in ${EXTRAS}
@@ -58,29 +57,24 @@ post-patch:
 	@${REINPLACE_CMD} -e 's,g++,${CXX},' -e 's|-O6|${CXXFLAGS}|' \
 		${WRKSRC}/configure
 
-.if empty(PORT_OPTIONS:MJOYSTICK)
-post-configure:
-	@${REINPLACE_CMD} -e '/^#define HAVE_LINUX_JOYSTICK_H 1/ d' \
-		${WRKSRC}/config.h
-.endif
-
 pre-install:
 	@${MKDIR} ${STAGEDIR}${DATADIR}
 
 post-install:
-	@${LN} -sf ${LOCALBASE}/bin/timeseal \
-		${STAGEDIR}${DATADIR}/timeseal.FreeBSD
-.if ${PORT_OPTIONS:MDOCS}
+# There is no timeseal port ATM :(
+#	@${LN} -sf ${LOCALBASE}/bin/timeseal \
+#		${STAGEDIR}${DATADIR}/timeseal.FreeBSD
+.for extra in ${EXTRAS}
+	@cd ${WRKDIR}/eboard-extras-${extra} && ${SETENV} EBOARDCONFIG=${STAGEDIR}${PREFIX}/bin/eboard-config ${CONFIGURE_CMD} --prefix=${PREFIX}
+	@cd ${WRKDIR}/eboard-extras-${extra} && ${SETENV} ${MAKE_ENV} ${MAKE} install DATADIR=${STAGEDIR}${DATADIR}
+.endfor
+
+post-install-DOCS-on:
 	@${MKDIR} ${STAGEDIR}${DOCSDIR}
 	${INSTALL_DATA} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR}
 .for file in Crafty.txt FICS-Timeseal.txt GNUChess4.txt GNUChess5.txt \
 	Scripts.txt Sjeng.txt Themes.txt
 	${INSTALL_DATA} ${WRKSRC}/Documentation/${file} ${STAGEDIR}${DOCSDIR}
 .endfor
-.endif
-.for extra in ${EXTRAS}
-	@cd ${WRKDIR}/eboard-extras-${extra} && ${SETENV} EBOARDCONFIG=${STAGEDIR}${PREFIX}/bin/eboard-config ${CONFIGURE_CMD} --prefix=${PREFIX}
-	@cd ${WRKDIR}/eboard-extras-${extra} && ${SETENV} ${MAKE_ENV} ${MAKE} install DATADIR=${STAGEDIR}${DATADIR}
-.endfor
 
 .include <bsd.port.mk>
diff --git a/games/eboard/files/patch-c++11 b/games/eboard/files/patch-c++11
deleted file mode 100644
index 68b47b914a39..000000000000
--- a/games/eboard/files/patch-c++11
+++ /dev/null
@@ -1,17 +0,0 @@
-libc++ doesn't like "using namespace std" in C++11
-
-network.cc:466:59: error: invalid operands to binary expression ('__bind<int &, sockaddr *, unsigned long>' and 'int')
-  if (bind(netsocket,(struct sockaddr *) &sin,sizeof(sin))==-1) {
-      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ ~~
-
---- network.cc.orig	2008-02-22 15:51:22 UTC
-+++ network.cc
-@@ -463,7 +463,7 @@ int IncomingConnection::createSocket() {
-   sin.sin_addr.s_addr = INADDR_ANY;
-   sin.sin_port = htons(Port);
-     
--  if (bind(netsocket,(struct sockaddr *) &sin,sizeof(sin))==-1) {
-+  if (::bind(netsocket,(struct sockaddr *) &sin,sizeof(sin))==-1) {
-     snprintf(errorMessage,128,_("Unable to bind on port %d."),Port);
-     return(-1);
-   }
diff --git a/games/eboard/files/patch-configure b/games/eboard/files/patch-configure
index 82f935bd6683..66f7415044e9 100644
--- a/games/eboard/files/patch-configure
+++ b/games/eboard/files/patch-configure
@@ -1,15 +1,15 @@
---- configure.orig	2021-03-13 13:18:59.466284000 -0800
-+++ configure	2021-03-13 13:18:59.474328000 -0800
-@@ -106,7 +106,7 @@
+--- configure.orig	2021-05-06 14:10:24 UTC
++++ configure
+@@ -106,7 +106,7 @@ sub run_cmd {
  }
  
  sub cplusplus_lang {
 -    my @compilers = ( $cxx, 'g++', 'c++' );
-+    my @compilers = ( $cxx, 'g++9', 'c++' );
++    my @compilers = ( $cxx, 'g++10', 'c++' );
      my $x;
      my $program = <<EOF;
  #include <list>
-@@ -357,7 +357,7 @@
+@@ -357,7 +357,7 @@ sub header_check {
  
  	log_file("test.cc");
  
@@ -18,7 +18,7 @@
  	    print ": no\n";
  	    $y = header_def($x);
  	    print CONFIGH "#undef $y\n";
-@@ -511,17 +511,9 @@
+@@ -511,17 +511,9 @@ if (!header_check("stdio.h","stdlib.h","string.h","uni
  #optional headers
  header_check("strings.h");
  
@@ -37,7 +37,7 @@
      cppdef("USE_SOCK_OPTS");
      if ($t1!=0 && $t3!=0) {
  	cppundef("NEED_TCP_H");
-@@ -535,10 +527,10 @@
+@@ -535,10 +527,10 @@ if ($t2 != 0) {
  	print "netinet/tcp.h not required, SOL_TCP present.\n";
      }
  } else {
diff --git a/games/eboard/files/patch-network.cc b/games/eboard/files/patch-network.cc
index 7940e08087f1..69e3d26ceb88 100644
--- a/games/eboard/files/patch-network.cc
+++ b/games/eboard/files/patch-network.cc
@@ -1,6 +1,15 @@
---- network.cc.orig	2008-02-22 16:51:22.000000000 +0100
-+++ network.cc	2008-12-29 11:24:10.000000000 +0100
-@@ -566,6 +566,7 @@
+--- network.cc.orig	2018-07-31 18:02:19 UTC
++++ network.cc
+@@ -501,7 +501,7 @@ int IncomingConnection::createSocket() {
+   sin.sin_addr.s_addr = INADDR_ANY;
+   sin.sin_port = htons(Port);
+     
+-  if (bind(netsocket,(struct sockaddr *) &sin,sizeof(sin))==-1) {
++  if (::bind(netsocket,(struct sockaddr *) &sin,sizeof(sin))==-1) {
+     snprintf(errorMessage,128,_("Unable to bind on port %d."),Port);
+     return(-1);
+   }
+@@ -604,6 +604,7 @@ PipeConnection::PipeConnection(int _pin,int _pout) {
    strcpy(HostName,"local pipe");
    snprintf(HostAddress,96,"pipe[%d,%d]",pin,pout);
    Quiet=0;
@@ -8,7 +17,7 @@
    MaxWaitTime = 60000.0; // 1 minute
  }
  
-@@ -577,6 +578,7 @@
+@@ -615,6 +616,7 @@ void PipeConnection::init() {
    strcpy(HostAddress,"unknown");
    memset(HelperBin,0,512);
    Quiet=0;
@@ -16,7 +25,7 @@
    handshake.erase();
    MaxWaitTime = 60000.0; // 1 minute
  }
-@@ -612,6 +614,25 @@
+@@ -652,6 +654,25 @@ PipeConnection::PipeConnection(const char *host,int po
    Port=port;
    g_strlcpy(HostName,host,128);
  
@@ -42,7 +51,7 @@
    // build helper path
    if (helpersuffix)
      snprintf(z,256,"%s.%s",helperbin,helpersuffix);
-@@ -728,7 +749,10 @@
+@@ -768,7 +789,10 @@ int PipeConnection::open() {
      dup2(1,2);
  
      setpgid(getpid(),0); // to broadcast SIGKILL later
diff --git a/games/eboard/files/patch-network.h b/games/eboard/files/patch-network.h
index c948b094d892..c63c8c331913 100644
--- a/games/eboard/files/patch-network.h
+++ b/games/eboard/files/patch-network.h
@@ -1,10 +1,10 @@
---- network.h.orig	Mon Jan 15 23:59:58 2007
-+++ network.h	Wed Jan 17 19:39:10 2007
-@@ -235,6 +235,7 @@
+--- network.h.orig	2018-07-31 18:02:19 UTC
++++ network.h
+@@ -253,6 +253,7 @@ class PipeConnection : public BufferedConnection,
    int  pid;
    int  toid; // timeout
    string handshake;
 +  int  use_execve;
    double MaxWaitTime; // msecs
- };
  
+ };
diff --git a/games/eboard/pkg-descr b/games/eboard/pkg-descr
index 87ce6d479602..3973f2a12af9 100644
--- a/games/eboard/pkg-descr
+++ b/games/eboard/pkg-descr
@@ -2,4 +2,4 @@ eboard is a GTK+ chess interface.  It provides a chess board
 interface to ICS (Internet Chess Servers) like FICS and chessd,
 and to chess engines like GNU Chess, Sjeng and Crafty.
 
-WWW: http://www.bergo.eng.br/eboard/
+WWW: https://www.bergo.eng.br/eboard/
diff --git a/games/eboard/pkg-message b/games/eboard/pkg-message
deleted file mode 100644
index b5c1af0f9850..000000000000
--- a/games/eboard/pkg-message
+++ /dev/null
@@ -1,9 +0,0 @@
-[
-{ type: install
-  message: <<EOM
-If you want to make FICS games fairer by accounting for network lag,
-install the games/timeseal port (when timeseal is active, the
-bottom-left icon changes to a orange/yellow locked clock).
-EOM
-}
-]


More information about the dev-commits-ports-all mailing list