summaryrefslogtreecommitdiff
path: root/games/eureka
diff options
context:
space:
mode:
authormicha <micha@pkgsrc.org>2020-02-26 12:28:02 +0000
committermicha <micha@pkgsrc.org>2020-02-26 12:28:02 +0000
commit79528ca12c05e7582ce1b5f888c032d17952fbc8 (patch)
tree2a49fb9381852259095222ef46e8f818b115807c /games/eureka
parentabd7d1e09a7ac622246c65c2a726af802a9e6be7 (diff)
downloadpkgsrc-79528ca12c05e7582ce1b5f888c032d17952fbc8.tar.gz
eureka: Update to 1.27.1
Version 1.27.1 is used for the package with the latest macOS patches. They were added to the source archive by upstream after the 1.27 release without changing its name. The new OpenGL renderer can be disabled with the new package option "opengl" (recommended on machines without hardware acceleration for OpenGL). The option "opengl" is ignored if the FLTK package was compiled without OpenGL support. CHANGES IN Eureka 1.27 ====================== (Since version 1.24) + use OpenGL for faster rendering of 2D and 3D views + improved non-GL drawing of 2D view, much faster in Linux + support mixing textures and flats for ports that allow it + improved 3D mode, can move things and sector surfaces + ratio lock, makes producing lines at certain angles easier - a single status bar for both 2D and 3D views - new popup menus to set edit mode, browser mode, scaling - render sectors in the 2D view with both lighting and texturing - create void islands by drawing lines anti-clockwise in a sector - snap position indicator for 2D view (a light-blue cross) - added scale '-' and '+' buttons, show scale as percentage - ability to highlight/select railings in 3D view - beginning of support for UDMF maps (not usable yet...) - render BOOM's deep water effect (linetype 242) [pkgrc note: Legacy linetype 301 "Translucent 3D water" is now visible with the OpenGL renderer too] - render 3D Floors for EDGE, LEGACY and ZDOOM ports [pkgrc note: 3D floors are only visible with the OpenGL renderer] - render basic slopes for EDGE, ETERNITY, ODAMEX and ZDOOM [pkgrc note: Slopes are only visible with the OpenGL renderer] - render things with a NULL sprite as a blue triangle - render Hexen map-spots as a green triangle - render unknown things with a smaller '?' sprite - preference to combine flats and textures in a single browser - preference to show all textures on a one-sided linedef - preference for linedef information (Length, Angle, Ratio) - support ESC key to cancel a current action (e.g. dragging) - support SHIFT and CTRL when using mouse-wheel to move in 3D view - support the FreeDM iwad - support TNT and Plutonia textures in FreeDoom2 iwad - support Hexen map format in the ETERNITY port - support PNG, JPEG and TGA images in sprite/flat/patch lumps - added portal specials 156 and 107 to the ZDOOM port - added missing specials 105, 106 and 130 to the ZDOOM port - improvements to the Makefile - improvements to the MacOS build files - fixed mode menu disappearing into Window's task bar when maximized - fixed not remembering test-in-game EXE when port is "vanilla" - fixed the 'Online Docs' command in the Help menu - fixed window title not showing correct map name - fixed Re-bind in key binding dialog to show new key as valid - fixed grid getting out-of-sync with the "hide in FREE mode" - fixed needless line flips when drawing clockwise within a sector
Diffstat (limited to 'games/eureka')
-rw-r--r--games/eureka/Makefile27
-rw-r--r--games/eureka/PLIST5
-rw-r--r--games/eureka/distinfo18
-rw-r--r--games/eureka/options.mk29
-rw-r--r--games/eureka/patches/patch-Makefile35
-rw-r--r--games/eureka/patches/patch-src_e__commands.cc21
-rw-r--r--games/eureka/patches/patch-src_m__files.cc6
-rw-r--r--games/eureka/patches/patch-src_main.cc16
-rw-r--r--games/eureka/patches/patch-src_ui__menu.cc16
-rw-r--r--games/eureka/patches/patch-src_ui__window.cc17
10 files changed, 71 insertions, 119 deletions
diff --git a/games/eureka/Makefile b/games/eureka/Makefile
index 105deb48418..94c1a809844 100644
--- a/games/eureka/Makefile
+++ b/games/eureka/Makefile
@@ -1,7 +1,10 @@
-# $NetBSD: Makefile,v 1.1 2019/09/11 16:26:17 micha Exp $
+# $NetBSD: Makefile,v 1.2 2020/02/26 12:28:02 micha Exp $
-DISTNAME= eureka-124-source
-PKGNAME= ${DISTNAME:S/-source//:S/-1/-1./}
+DISTNAME= eureka-127-source
+# The latest macOS patches were added after the release of 1.27 but
+# unfortunately the archive name was not changed.
+# Use version 1.27.1 for the package based on the updated source archive
+PKGNAME= ${DISTNAME:S/-source/.1/:S/-1/-1./}
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=eureka-editor/}
@@ -10,33 +13,33 @@ HOMEPAGE= https://sourceforge.net/projects/eureka-editor/
COMMENT= Doom/Heretic/Hexen map editor
LICENSE= gnu-gpl-v2
-USE_LANGUAGES= c++
+# Makefile declares "-std=c++03"
+USE_LANGUAGES= c++03
USE_TOOLS+= gmake
-WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}-source
+WRKSRC= ${WRKDIR}/eureka-1.27-source
# DOOMWADDIR is intentionally shared with other Doom packages
-DOOMWADDIR= share/doom
+DOOMWADDIR= share/doom
+INSTALLATION_DIRS= bin
# Modify internal search path to check ${PREFIX}/share hierarchy first
SUBST_CLASSES+= prefix
SUBST_STAGE.prefix= do-configure
-SUBST_MESSAGE.prefix= Preparing main.cc file ...
+SUBST_MESSAGE.prefix= Preparing main.cc ...
SUBST_FILES.prefix= src/main.cc
SUBST_SED.prefix= -e 's,PKGSRC_PREFIX,${PREFIX},'
# Modify internal search path for DOOMWADDIR (if environment variable not set)
SUBST_CLASSES+= dwd
SUBST_STAGE.dwd= do-configure
-SUBST_MESSAGE.dwd= Preparing m_files.cc file ...
+SUBST_MESSAGE.dwd= Preparing m_files.cc ...
SUBST_FILES.dwd= src/m_files.cc
SUBST_SED.dwd= -e 's,PKGSRC_DOOMWADDIR,${PREFIX}/${DOOMWADDIR},'
-# Can be used by FLTK for fl_open_uri() on X11
-DEPENDS+= xdg-utils>=1.1:../../misc/xdg-utils
+.include "options.mk"
BUILDLINK_API_DEPENDS.zlib+= zlib>=1.2.3
.include "../../devel/zlib/buildlink3.mk"
-# FLTK version 1.4 is supported too
-.include "../../x11/fltk13/buildlink3.mk"
+
.include "../../mk/bsd.pkg.mk"
diff --git a/games/eureka/PLIST b/games/eureka/PLIST
index 49e4bd0e78a..108aec32109 100644
--- a/games/eureka/PLIST
+++ b/games/eureka/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.1 2019/09/11 16:26:17 micha Exp $
+@comment $NetBSD: PLIST,v 1.2 2020/02/26 12:28:02 micha Exp $
bin/eureka
share/eureka/about_logo.png
share/eureka/bindings.cfg
@@ -12,9 +12,12 @@ share/eureka/common/gen_types.ugh
share/eureka/common/hexen_groups.ugh
share/eureka/common/hexen_lines.ugh
share/eureka/common/hexen_sectors.ugh
+share/eureka/common/plutonia_tex.ugh
+share/eureka/common/tnt_tex.ugh
share/eureka/defaults.cfg
share/eureka/games/doom.ugh
share/eureka/games/doom2.ugh
+share/eureka/games/freedm.ugh
share/eureka/games/freedoom1.ugh
share/eureka/games/freedoom2.ugh
share/eureka/games/hacx.ugh
diff --git a/games/eureka/distinfo b/games/eureka/distinfo
index 62631d33045..157244ad1a9 100644
--- a/games/eureka/distinfo
+++ b/games/eureka/distinfo
@@ -1,12 +1,8 @@
-$NetBSD: distinfo,v 1.1 2019/09/11 16:26:17 micha Exp $
+$NetBSD: distinfo,v 1.2 2020/02/26 12:28:02 micha Exp $
-SHA1 (eureka-124-source.tar.gz) = 78754c63bda8296627b185f62a6ec57e5c618a15
-RMD160 (eureka-124-source.tar.gz) = 9e6ea0f207d9445c64fca31531112adad6d0299d
-SHA512 (eureka-124-source.tar.gz) = 27f858ac0ea366932777830dca289db456ba68a90bbfa507dcf734f4aa0b0b72fd5654ab8cb0305c9a51793e97fb7b686a5860cc00d37304eab5db1cecbb3c05
-Size (eureka-124-source.tar.gz) = 1111598 bytes
-SHA1 (patch-Makefile) = c5e36dd8c41b745ab7c3197077937967f9263ecd
-SHA1 (patch-src_e__commands.cc) = 7b5c9bcd4db15462335ac988acc42609ee3c4c07
-SHA1 (patch-src_m__files.cc) = de29f214c96a26e906ec35c63a692ab00898157d
-SHA1 (patch-src_main.cc) = 7e3a1db40d055f04622ac7cd6ae3997ed77e66ea
-SHA1 (patch-src_ui__menu.cc) = 0ba9a84b25db2543e5ede793ad9a5405e63b4281
-SHA1 (patch-src_ui__window.cc) = c058e793e57b8208d3287c658ec2e2c7457380f9
+SHA1 (eureka-127-source.tar.gz) = 0bde0e4b2e0c4ee20c6633eceabb03d23db1c8db
+RMD160 (eureka-127-source.tar.gz) = 527a2f2ab978902fc7e5b21f52726b66614e66a3
+SHA512 (eureka-127-source.tar.gz) = f634d1abe1e3ebc2b2d33eab95c715ea0a315f2bd485d84738d1daee70047224216cffff801a8389e3c616d28a727c6c1b4fd0f89ab2585ee09d3648dd12fbc9
+Size (eureka-127-source.tar.gz) = 1159172 bytes
+SHA1 (patch-src_m__files.cc) = 5bdfaefa324408632a8e649c8994479e7ec00ae1
+SHA1 (patch-src_main.cc) = 7c107f89e64ec2de5588880c71ba0e24b1aaf354
diff --git a/games/eureka/options.mk b/games/eureka/options.mk
new file mode 100644
index 00000000000..9f572d6b6bb
--- /dev/null
+++ b/games/eureka/options.mk
@@ -0,0 +1,29 @@
+# $NetBSD: options.mk,v 1.1 2020/02/26 12:28:02 micha Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.eureka
+PKG_SUPPORTED_OPTIONS= opengl xdg-utils
+PKG_SUGGESTED_OPTIONS= opengl xdg-utils
+
+.include "../../mk/bsd.options.mk"
+
+.include "../../x11/fltk13/buildlink3.mk"
+
+# opengl: Use OpenGL for rendering
+# If FLTK is compiled without opengl option, it is always disabled here too.
+# If FLTK is compiled with opengl option, disabling it here allows to force
+# usage of the software renderer (recommended without hardware acceleration).
+.if empty(PKG_OPTIONS.fltk13:Mopengl) || empty(PKG_OPTIONS:Mopengl)
+SUBST_CLASSES+= opengl
+SUBST_STAGE.opengl= do-configure
+SUBST_MESSAGE.opengl= Disable OpenGL renderer in Makefile ...
+SUBST_FILES.opengl= Makefile
+SUBST_SED.opengl= -e 's,\# CXXFLAGS += -DNO_OPENGL,CXXFLAGS += -DNO_OPENGL,'
+SUBST_SED.opengl+= -e 's, --use-gl,,'
+SUBST_SED.opengl+= -e 's,LIBS += -lGLU -lGL,\#LIBS += -lGLU -lGL,'
+.endif
+
+# xdg-utils: Create dependency for xdg-utils (Portland project)
+# Can be used by FLTK for fl_open_uri() on X11.
+.if !empty(PKG_OPTIONS:Mxdg-utils)
+DEPENDS+= xdg-utils>=1.1:../../misc/xdg-utils
+.endif
diff --git a/games/eureka/patches/patch-Makefile b/games/eureka/patches/patch-Makefile
deleted file mode 100644
index 5699e557d61..00000000000
--- a/games/eureka/patches/patch-Makefile
+++ /dev/null
@@ -1,35 +0,0 @@
-$NetBSD: patch-Makefile,v 1.1 2019/09/11 16:26:17 micha Exp $
-
-Create ${PREFIX}/bin for installation.
-Do not force user root, to allow installation with non-root account.
-
---- Makefile.orig 2018-08-27 08:42:00.000000000 +0000
-+++ Makefile
-@@ -141,18 +141,19 @@ stripped: all
- INSTALL_DIR=$(DESTDIR)$(PREFIX)/share/eureka
-
- install: stripped
-- install -o root -m 755 $(PROGRAM) $(DESTDIR)$(PREFIX)/bin/
-+ install -d $(DESTDIR)$(PREFIX)/bin
-+ install -m 755 $(PROGRAM) $(DESTDIR)$(PREFIX)/bin
- install -d $(INSTALL_DIR)/games
- install -d $(INSTALL_DIR)/common
- install -d $(INSTALL_DIR)/ports
- rm -f $(INSTALL_DIR)/games/freedoom.ugh
-- install -o root -m 644 bindings.cfg $(INSTALL_DIR)/bindings.cfg
-- install -o root -m 644 defaults.cfg $(INSTALL_DIR)/defaults.cfg
-- install -o root -m 644 operations.cfg $(INSTALL_DIR)/operations.cfg
-- install -o root -m 644 misc/about_logo.png $(INSTALL_DIR)/about_logo.png
-- install -o root -m 644 games/*.* $(INSTALL_DIR)/games
-- install -o root -m 644 common/*.* $(INSTALL_DIR)/common
-- install -o root -m 644 ports/*.* $(INSTALL_DIR)/ports
-+ install -m 644 bindings.cfg $(INSTALL_DIR)/bindings.cfg
-+ install -m 644 defaults.cfg $(INSTALL_DIR)/defaults.cfg
-+ install -m 644 operations.cfg $(INSTALL_DIR)/operations.cfg
-+ install -m 644 misc/about_logo.png $(INSTALL_DIR)/about_logo.png
-+ install -m 644 games/*.* $(INSTALL_DIR)/games
-+ install -m 644 common/*.* $(INSTALL_DIR)/common
-+ install -m 644 ports/*.* $(INSTALL_DIR)/ports
-
- full-install: install
- xdg-desktop-menu install --novendor misc/eureka.desktop
diff --git a/games/eureka/patches/patch-src_e__commands.cc b/games/eureka/patches/patch-src_e__commands.cc
deleted file mode 100644
index bc5574f7066..00000000000
--- a/games/eureka/patches/patch-src_e__commands.cc
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-src_e__commands.cc,v 1.1 2019/09/11 16:26:17 micha Exp $
-
-Show error message if function fl_open_uri() fails.
-
---- src/e_commands.cc.orig 2018-08-03 04:22:13.000000000 +0000
-+++ src/e_commands.cc
-@@ -1180,7 +1180,13 @@ void CMD_LogViewer()
-
- void CMD_OnlineDocs()
- {
-- fl_open_uri("http://eureka-editor.sourceforge.net/?n=Docs.Index");
-+ int rv;
-+
-+ rv = fl_open_uri("http://eureka-editor.sourceforge.net/?n=Docs.Index");
-+ if (1 != rv)
-+ {
-+ Beep("Failed to open WWW browser");
-+ }
- }
-
-
diff --git a/games/eureka/patches/patch-src_m__files.cc b/games/eureka/patches/patch-src_m__files.cc
index 418a74a4b31..8208ff3adfe 100644
--- a/games/eureka/patches/patch-src_m__files.cc
+++ b/games/eureka/patches/patch-src_m__files.cc
@@ -1,10 +1,10 @@
-$NetBSD: patch-src_m__files.cc,v 1.1 2019/09/11 16:26:17 micha Exp $
+$NetBSD: patch-src_m__files.cc,v 1.2 2020/02/26 12:28:02 micha Exp $
-Add placeholder for pkgsrc DOOMEADDIR to beginning of search list.
+Add placeholder for pkgsrc DOOMWADDIR to beginning of search list.
--- src/m_files.cc.orig 2018-06-23 11:29:07.000000000 +0000
+++ src/m_files.cc
-@@ -721,6 +721,7 @@ static const char * SearchForIWAD(const
+@@ -723,6 +723,7 @@ static const char * SearchForIWAD(const
"c:/doom2",
"c:/doom95",
#else
diff --git a/games/eureka/patches/patch-src_main.cc b/games/eureka/patches/patch-src_main.cc
index 4e1e75a9e44..7ab61bf2a30 100644
--- a/games/eureka/patches/patch-src_main.cc
+++ b/games/eureka/patches/patch-src_main.cc
@@ -1,10 +1,11 @@
-$NetBSD: patch-src_main.cc,v 1.1 2019/09/11 16:26:17 micha Exp $
+$NetBSD: patch-src_main.cc,v 1.2 2020/02/26 12:28:02 micha Exp $
Add placeholder for pkgsrc PREFIX to beginning of search list.
+Remove date to make builds reproducible (based on Debian patch).
---- src/main.cc.orig 2018-08-05 08:20:26.000000000 +0000
+--- src/main.cc.orig 2019-09-27 11:13:24.000000000 +0000
+++ src/main.cc
-@@ -301,6 +301,7 @@ static void Determine_InstallPath(const
+@@ -317,6 +317,7 @@ static void Determine_InstallPath(const
#else
static const char *prefixes[] =
{
@@ -12,3 +13,12 @@ Add placeholder for pkgsrc PREFIX to beginning of search list.
"/usr/local",
"/usr",
"/opt",
+@@ -968,7 +968,7 @@ static void ShowHelp()
+
+ static void ShowVersion()
+ {
+- printf("Eureka version " EUREKA_VERSION " (" __DATE__ ")\n");
++ printf("Eureka version " EUREKA_VERSION " (Reproducible build)\n");
+
+ fflush(stdout);
+ }
diff --git a/games/eureka/patches/patch-src_ui__menu.cc b/games/eureka/patches/patch-src_ui__menu.cc
deleted file mode 100644
index ac31de04f65..00000000000
--- a/games/eureka/patches/patch-src_ui__menu.cc
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-src_ui__menu.cc,v 1.1 2019/09/11 16:26:17 micha Exp $
-
-Fix internal name for Online Documentation menu entry.
-
---- src/ui_menu.cc.orig 2018-08-03 04:23:43.000000000 +0000
-+++ src/ui_menu.cc
-@@ -412,7 +412,8 @@ static void tools_do_view_logs(Fl_Widget
-
- static void help_do_online_docs(Fl_Widget *w, void * data)
- {
-- ExecuteCommand("Documentation");
-+ //ExecuteCommand("Documentation");
-+ ExecuteCommand("OnlineDocs");
- }
-
- static void help_do_about(Fl_Widget *w, void * data)
diff --git a/games/eureka/patches/patch-src_ui__window.cc b/games/eureka/patches/patch-src_ui__window.cc
deleted file mode 100644
index d3bef78c9ab..00000000000
--- a/games/eureka/patches/patch-src_ui__window.cc
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-src_ui__window.cc,v 1.1 2019/09/11 16:26:17 micha Exp $
-
-Prepare for FLTK 1.4 and allow minor numbers larger than 3 too.
-
---- src/ui_window.cc.orig 2018-07-22 10:30:09.000000000 +0000
-+++ src/ui_window.cc
-@@ -30,8 +30,9 @@
- #include <unistd.h>
- #endif
-
-+/* pkgsrc: Prepare for the upcoming FLTK 1.4.0 release */
- #if (FL_MAJOR_VERSION != 1 || \
-- FL_MINOR_VERSION != 3 || \
-+ FL_MINOR_VERSION < 3 || \
- FL_PATCH_VERSION < 0)
- #error "Require FLTK version 1.3.0 or later"
- #endif