View | Details | Raw Unified | Return to bug 253433 | Differences between
and this patch

Collapse All | Expand All

(-)games/uhexen2/Makefile (-12 / +14 lines)
Lines 3-9 Link Here
3
3
4
PORTNAME=	uhexen2
4
PORTNAME=	uhexen2
5
PORTVERSION=	1.5.9
5
PORTVERSION=	1.5.9
6
PORTREVISION=	1
6
PORTREVISION=	2
7
CATEGORIES=	games
7
CATEGORIES=	games
8
MASTER_SITES=	SF/${PORTNAME}/Hammer%20of%20Thyrion/${PORTVERSION}/Source \
8
MASTER_SITES=	SF/${PORTNAME}/Hammer%20of%20Thyrion/${PORTVERSION}/Source \
9
		SF/${PORTNAME}/Hexen2%20GameData/gamedata-1.29b:data \
9
		SF/${PORTNAME}/Hexen2%20GameData/gamedata-1.29b:data \
Lines 13-19 Link Here
13
		gamedata-all-1.29b${EXTRACT_SUFX}:data
13
		gamedata-all-1.29b${EXTRACT_SUFX}:data
14
DIST_SUBDIR=	${PORTNAME}
14
DIST_SUBDIR=	${PORTNAME}
15
15
16
MAINTAINER=	ports@FreeBSD.org
16
MAINTAINER=	ip@unixway.org
17
COMMENT=	Hexen II source port supporting Linux/FreeBSD/Unix/Windows
17
COMMENT=	Hexen II source port supporting Linux/FreeBSD/Unix/Windows
18
18
19
LICENSE=	GPLv2+
19
LICENSE=	GPLv2+
Lines 31-37 Link Here
31
31
32
OPTIONS_DEFINE=		DOCS FLAC MIKMOD OGG OPUS
32
OPTIONS_DEFINE=		DOCS FLAC MIKMOD OGG OPUS
33
OPTIONS_MULTI=		BIN
33
OPTIONS_MULTI=		BIN
34
OPTIONS_MULTI_BIN=	HEXEN2 HW
34
OPTIONS_MULTI_BIN=	HEXEN2 HW H2PATCH
35
OPTIONS_RADIO=		MP3LIB VORBISLIB
35
OPTIONS_RADIO=		MP3LIB VORBISLIB
36
OPTIONS_RADIO_MP3LIB=	MAD MPG123
36
OPTIONS_RADIO_MP3LIB=	MAD MPG123
37
OPTIONS_RADIO_VORBISLIB=	TREMOR VORBIS
37
OPTIONS_RADIO_VORBISLIB=	TREMOR VORBIS
Lines 49-54 Link Here
49
HW_DESC=		Build HexenWorld clients and servers
49
HW_DESC=		Build HexenWorld clients and servers
50
HW_DISTFILES=		hexenworld-pakfiles-0.15${EXTRACT_SUFX}:hw
50
HW_DISTFILES=		hexenworld-pakfiles-0.15${EXTRACT_SUFX}:hw
51
HW_MAKE_ARGS=		BUILD_HW=yes
51
HW_MAKE_ARGS=		BUILD_HW=yes
52
H2PATCH_DESC=		Build game data patching tool
53
H2PATCH_MAKE_ARGS=	BUILD_H2PATCH=yes
52
MAD_LIB_DEPENDS=	libmad.so:audio/libmad
54
MAD_LIB_DEPENDS=	libmad.so:audio/libmad
53
MAD_MAKE_ARGS=		MP3LIB=mad
55
MAD_MAKE_ARGS=		MP3LIB=mad
54
MIKMOD_LIB_DEPENDS=	libmikmod.so:audio/libmikmod
56
MIKMOD_LIB_DEPENDS=	libmikmod.so:audio/libmikmod
Lines 85-91 Link Here
85
post-patch:
87
post-patch:
86
.for f in engine/hexen2/Makefile engine/hexenworld/client/Makefile \
88
.for f in engine/hexen2/Makefile engine/hexenworld/client/Makefile \
87
	engine/hexenworld/server/Makefile hw_utils/hwmaster/Makefile \
89
	engine/hexenworld/server/Makefile hw_utils/hwmaster/Makefile \
88
	libs/timidity/Makefile
90
	libs/timidity/Makefile h2patch/Makefile
89
	@${REINPLACE_CMD} -e \
91
	@${REINPLACE_CMD} -e \
90
		'/^CPU_X86/s|=.*|=| ; \
92
		'/^CPU_X86/s|=.*|=| ; \
91
		 /^CFLAGS/s| -g | | ; \
93
		 /^CFLAGS/s| -g | | ; \
Lines 101-112 Link Here
101
.endfor
103
.endfor
102
104
103
do-install:
105
do-install:
104
	@${MKDIR} ${STAGEDIR}${DATADIR}/data1
106
	cd ${WRKDIR} && \
105
.for f in default.cfg hexen.rc progs.dat progs2.dat strings.txt
107
	${COPYTREE_SHARE} data1 ${STAGEDIR}${DATADIR} && \
106
	${INSTALL_DATA} ${WRKDIR}/data1/${f} ${STAGEDIR}${DATADIR}/data1
108
	${COPYTREE_SHARE} portals ${STAGEDIR}${DATADIR}
107
.endfor
108
	${INSTALL_DATA} ${WRKDIR}/patchdat/data1/* ${STAGEDIR}${DATADIR}/data1
109
	(cd ${WRKDIR} && ${COPYTREE_SHARE} portals ${STAGEDIR}${DATADIR})
110
109
111
post-install-HW-on:
110
post-install-HW-on:
112
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexenworld/client/glhwcl ${STAGEDIR}${PREFIX}/bin
111
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexenworld/client/glhwcl ${STAGEDIR}${PREFIX}/bin
Lines 113-125 Link Here
113
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexenworld/client/hwcl ${STAGEDIR}${PREFIX}/bin
112
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexenworld/client/hwcl ${STAGEDIR}${PREFIX}/bin
114
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexenworld/server/hwsv ${STAGEDIR}${PREFIX}/bin
113
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexenworld/server/hwsv ${STAGEDIR}${PREFIX}/bin
115
	${INSTALL_PROGRAM} ${WRKSRC}/hw_utils/hwmaster/hwmaster ${STAGEDIR}${PREFIX}/bin
114
	${INSTALL_PROGRAM} ${WRKSRC}/hw_utils/hwmaster/hwmaster ${STAGEDIR}${PREFIX}/bin
116
	${MKDIR} ${STAGEDIR}${DATADIR}/hw
115
	cd ${WRKDIR} && ${COPYTREE_SHARE} hw ${STAGEDIR}${DATADIR}
117
	${INSTALL_DATA} ${WRKDIR}/hw/* ${STAGEDIR}${DATADIR}/hw
118
116
119
post-install-HEXEN2-on:
117
post-install-HEXEN2-on:
120
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexen2/glhexen2 ${STAGEDIR}${PREFIX}/bin
118
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexen2/glhexen2 ${STAGEDIR}${PREFIX}/bin
121
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexen2/hexen2 ${STAGEDIR}${PREFIX}/bin
119
	${INSTALL_PROGRAM} ${WRKSRC}/engine/hexen2/hexen2 ${STAGEDIR}${PREFIX}/bin
122
120
121
post-install-H2PATCH-on:
122
	${INSTALL_PROGRAM} ${WRKSRC}/h2patch/h2patch ${STAGEDIR}${PREFIX}/bin
123
	cd ${WRKDIR} && ${COPYTREE_SHARE} patchdat ${STAGEDIR}${DATADIR}
124
123
post-install-DOCS-on:
125
post-install-DOCS-on:
124
	${MKDIR} ${STAGEDIR}${DOCSDIR}
126
	${MKDIR} ${STAGEDIR}${DOCSDIR}
125
	${INSTALL_DATA} ${WRKSRC}/docs/* ${STAGEDIR}${DOCSDIR}
127
	${INSTALL_DATA} ${WRKSRC}/docs/* ${STAGEDIR}${DOCSDIR}
(-)games/uhexen2/files/Makefile (+3 lines)
Lines 15-17 Link Here
15
	$(MAKE) -C engine/hexenworld/client glhw localclean
15
	$(MAKE) -C engine/hexenworld/client glhw localclean
16
	$(MAKE) -C hw_utils/hwmaster hwmaster clean
16
	$(MAKE) -C hw_utils/hwmaster hwmaster clean
17
endif
17
endif
18
ifeq ($(BUILD_H2PATCH),yes)
19
	${MAKE} -C h2patch
20
endif
(-)games/uhexen2/files/patch-h2patch_Makefile (+17 lines)
Line 0 Link Here
1
--- h2patch/Makefile.orig	2021-02-11 09:31:42 UTC
2
+++ h2patch/Makefile
3
@@ -10,11 +10,11 @@ LIBS_DIR:=$(UHEXEN2_TOP)/libs
4
 OSLIBS:=$(UHEXEN2_TOP)/oslibs
5
 
6
 CC ?= gcc
7
-ifeq ($(origin CC),default)
8
+#ifeq ($(origin CC),default)
9
 # refuse the stupid 'cc' default of make
10
 # which not necessarily exist everywhere
11
-CC  = gcc
12
-endif
13
+#CC  = gcc
14
+#endif
15
 LINKER = $(CC)
16
 
17
 CPUFLAGS=
(-)games/uhexen2/files/patch-h2patch_h2patch3.c (+40 lines)
Line 0 Link Here
1
--- h2patch/h2patch3.c.orig	2017-09-01 18:03:15 UTC
2
+++ h2patch/h2patch3.c
3
@@ -580,6 +580,7 @@ static void print_help (void)
4
 	fprintf (stdout, "  -h | -help   show help\n");
5
 	fprintf (stdout, "  -version     show version\n");
6
 	fprintf (stdout, "  -verbose     be verbose\n");
7
+	fprintf (stdout, "  -prefix dir  look for data files in 'dir'\n");
8
 }
9
 
10
 
11
@@ -663,6 +664,7 @@ int main (int argc, char **argv)
12
 	int	i, num_patched, ret;
13
 	long		len;
14
 	unsigned long	csum;
15
+	char*	prefix = ".";
16
 
17
 	print_version ();
18
 	for (i = 1; i < argc; ++i)
19
@@ -680,6 +682,10 @@ int main (int argc, char **argv)
20
 		{
21
 			h2patch_options.verbose = 1;
22
 		}
23
+		else if (!strcmp(argv[i], "-prefix"))
24
+		{
25
+			prefix = argv[++i];
26
+		}
27
 		else
28
 		{
29
 			fprintf (stderr, "Unrecognized option \"%s\"\n", argv[i]);
30
@@ -710,8 +716,8 @@ int main (int argc, char **argv)
31
 
32
 	for (i = 0; i < NUM_PATCHES; i++)
33
 	{
34
-		q_snprintf (dst, sizeof(dst), "%s%c%s", patch_data[i].dir_name,
35
-					DIR_SEPARATOR_CHAR, patch_data[i].filename);
36
+		q_snprintf (dst, sizeof(dst), "%s%c%s%c%s", prefix , DIR_SEPARATOR_CHAR, 
37
+			patch_data[i].dir_name, DIR_SEPARATOR_CHAR, patch_data[i].filename);
38
 		fprintf (stdout, "File %s :\n", dst);
39
 
40
 		ret = check_access(dst);
(-)games/uhexen2/files/pkg-message.in (-4 / +12 lines)
Lines 4-14 Link Here
4
Hexen II: Hammer of Thyrion has been installed.
4
Hexen II: Hammer of Thyrion has been installed.
5
5
6
To complete the installation of this port you have to copy the original
6
To complete the installation of this port you have to copy the original
7
"data1/pak0.pak" and "data1/pak1.pak" files from your original distribution to
7
"data1/pak0.pak" and "data1/pak1.pak" files from your original distribution
8
"%%DATADIR%%/data1" in lower-case form.
8
to "%%DATADIR%%/data1" in lower-case form.
9
9
10
Then see the documentation about patching the data files in
10
To play mission pack "Portal of Praevus" copy "portals/pak3.pak" from your
11
"%%DOCSDIR%%". The update files are installed.
11
original distribution
12
to "%%DATADIR%%/portals" in lower-case form.
13
14
Pak files should be from latest Raven's 1.11 distribution!
15
16
If you have pak files from earlier version of the game, you have to patch them
17
to the latest version. You can apply official patch or build the port with 
18
H2PATCH option enabled and then run:
19
	h2patch -prefix %%DATADIR%%
12
EOM
20
EOM
13
}
21
}
14
]
22
]
(-)games/uhexen2/pkg-plist (-2 / +17 lines)
Lines 4-9 Link Here
4
%%HW%%bin/hwcl
4
%%HW%%bin/hwcl
5
%%HW%%bin/hwmaster
5
%%HW%%bin/hwmaster
6
%%HW%%bin/hwsv
6
%%HW%%bin/hwsv
7
%%H2PATCH%%bin/h2patch
7
%%PORTDOCS%%%%DOCSDIR%%/ABOUT
8
%%PORTDOCS%%%%DOCSDIR%%/ABOUT
8
%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
9
%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
9
%%PORTDOCS%%%%DOCSDIR%%/BUGS
10
%%PORTDOCS%%%%DOCSDIR%%/BUGS
Lines 25-34 Link Here
25
%%PORTDOCS%%%%DOCSDIR%%/ReleaseNotes.old
26
%%PORTDOCS%%%%DOCSDIR%%/ReleaseNotes.old
26
%%PORTDOCS%%%%DOCSDIR%%/SrcNotes.txt
27
%%PORTDOCS%%%%DOCSDIR%%/SrcNotes.txt
27
%%PORTDOCS%%%%DOCSDIR%%/TODO
28
%%PORTDOCS%%%%DOCSDIR%%/TODO
28
%%DATADIR%%/data1/data1pk0.xd3
29
%%DATADIR%%/data1/autoexec.cfg
29
%%DATADIR%%/data1/data1pk1.xd3
30
%%DATADIR%%/data1/default.cfg
30
%%DATADIR%%/data1/default.cfg
31
%%DATADIR%%/data1/hexen.rc
31
%%DATADIR%%/data1/hexen.rc
32
%%DATADIR%%/data1/maps/README.txt
33
%%DATADIR%%/data1/maps/cath.ent
34
%%DATADIR%%/data1/maps/cath.txt
35
%%DATADIR%%/data1/maps/demo2.ent
36
%%DATADIR%%/data1/maps/demo2.txt
37
%%DATADIR%%/data1/maps/egypt4.ent
38
%%DATADIR%%/data1/maps/egypt4.txt
39
%%DATADIR%%/data1/maps/egypt5.ent
40
%%DATADIR%%/data1/maps/egypt5.txt
41
%%DATADIR%%/data1/maps/romeric5.ent
42
%%DATADIR%%/data1/maps/romeric5.txt
43
%%DATADIR%%/data1/maps/tower.ent
44
%%DATADIR%%/data1/maps/tower.txt
32
%%DATADIR%%/data1/progs.dat
45
%%DATADIR%%/data1/progs.dat
33
%%DATADIR%%/data1/progs2.dat
46
%%DATADIR%%/data1/progs2.dat
34
%%DATADIR%%/data1/strings.txt
47
%%DATADIR%%/data1/strings.txt
Lines 51-53 Link Here
51
%%DATADIR%%/portals/progs.dat
64
%%DATADIR%%/portals/progs.dat
52
%%DATADIR%%/portals/puzzles.txt
65
%%DATADIR%%/portals/puzzles.txt
53
%%DATADIR%%/portals/strings.txt
66
%%DATADIR%%/portals/strings.txt
67
%%H2PATCH%%%%DATADIR%%/patchdat/data1/data1pk0.xd3
68
%%H2PATCH%%%%DATADIR%%/patchdat/data1/data1pk1.xd3

Return to bug 253433