[packages/advancepac] - initial

qboosh qboosh at pld-linux.org
Sun Apr 21 20:02:43 CEST 2024


commit 20b5e4cfaedd421633b811d6febabf592a4cfc73
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Apr 21 19:44:14 2024 +0200

    - initial

 advancepac-format.patch    |  48 ++++++++++++++++++
 advancepac-includes.patch  |  11 +++++
 advancepac-link.patch      |  31 ++++++++++++
 advancepac-no-common.patch |  32 ++++++++++++
 advancepac.spec            | 119 +++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 241 insertions(+)
---
diff --git a/advancepac.spec b/advancepac.spec
new file mode 100644
index 0000000..ba70a9a
--- /dev/null
+++ b/advancepac.spec
@@ -0,0 +1,119 @@
+Summary:	AdvancePAC - unofficial PacMAME version with advanced video support
+Summary(pl.UTF-8):	AdvancePAC - nieoficjalna wersja PacMAME z rozszerzoną obsługą obrazu
+Name:		advancepac
+Version:	0.58.0
+Release:	1
+License:	GPL v2+
+Group:		Applications/Emulators
+Source0:	https://downloads.sourceforge.net/advancemame/%{name}-%{version}.zip
+# Source0-md5:	30653288d988dc9ae863d203d9dda19c
+# https://www.zophar.net/mame/pacmame.html /0.58
+Source1:	https://www.zophar.net/fileuploads/1/1624xbgak/pmsource58.zip
+# Source1-md5:	243d4d9444f9c97eeadfae369bbe4d6b
+Patch0:		%{name}-format.patch
+Patch1:		%{name}-no-common.patch
+Patch2:		%{name}-includes.patch
+Patch3:		%{name}-link.patch
+URL:		http://www.advancemame.it/
+BuildRequires:	gcc >= 2.95.3
+BuildRequires:	libstdc++-devel
+BuildRequires:	make >= 1:3.79.1
+BuildRequires:	nasm >= 0.98
+BuildRequires:	rpmbuild(macros) >= 1.674
+BuildRequires:	sed >= 4.0
+BuildRequires:	slang-devel >= 1.4.3
+BuildRequires:	svgalib-devel >= 1.9.14
+BuildRequires:	zlib-devel >= 1.1.3
+Requires:	slang >= 1.4.3
+Requires:	svgalib >= 1.9.14
+Requires:	zlib >= 1.1.3
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+AdvancePAC is unofficial PacMAME version for DOS and Linux with an
+advanced video support for helping the use with TVs, Arcade Monitors,
+Fixed Frequencies Monitors and also for PC Monitors.
+
+%description -l pl.UTF-8
+AdvancePAC to nieoficjalna wersja PacMAME dla DOS-a i Linuksa z
+rozszerzoną obsługą obrazu, pozwalająca na korzystanie z monitorów
+gier zręcznościowych, monitorów o stałych częstotliwościach, a także
+monitorów PC.
+
+%prep
+%setup -q -c -a1
+
+%{__mv} src srcpac
+%undos srcpac/*.[ch] srcpac/*.mak srcpac/cpu/z80/*.c srcpac/sound/*.c
+%undos srcpac/cpu/m68000/*.[ch]
+patch -p1 -d srcpac < advance/advpac.dif
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+
+# src/*.h paths in advance/osd/mame2.h
+ln -s srcpac src
+
+%build
+%{__make} \
+%ifarch i586
+	ARCH=i586 \
+%endif
+%ifarch i686
+	ARCH=i686 \
+%endif
+%ifarch k6
+	ARCH=k6 \
+%endif
+%ifarch athlon
+	ARCH=athlon \
+%endif
+%ifnarch i586 i686 k6 athlon
+	ARCH=lsb \
+%endif
+	TARGET=pac \
+	CC="%{__cc}" \
+	CFLAGS_OPTIMIZE="%{rpmcflags}" \
+	LDFLAGS="%{rpmldflags}" \
+	COMPRESS= \
+	%{?with_svga:USE_SVGALIB=1}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_bindir}
+
+%{__make} install \
+	INSTALL_PROGRAM_DIR="install -d -m755" \
+	INSTALL_MAN_DIR="install -d -m755" \
+	INSTALL_DATA_DIR="install -d -m755" \
+	INSTALL_PROGRAM="install -m755" \
+	INSTALL_MAN="install -m644" \
+	INSTALL_DATA="install -m644" \
+	PREFIX=$RPM_BUILD_ROOT%{_prefix}
+
+# main binary omitted by make install???
+install advpac $RPM_BUILD_ROOT%{_bindir}
+
+# packaged as %doc
+%{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(644,root,root,755)
+%doc doc/{advcfg,advj,advk,advline,advm,advs,advv,authors,faq,history,license,readme,release,script,tips}.txt
+%attr(755,root,root) %{_bindir}/advcfg
+%attr(755,root,root) %{_bindir}/advj
+%attr(755,root,root) %{_bindir}/advk
+%attr(755,root,root) %{_bindir}/advline
+%attr(755,root,root) %{_bindir}/advm
+%attr(755,root,root) %{_bindir}/advpac
+%attr(755,root,root) %{_bindir}/advs
+%attr(755,root,root) %{_bindir}/advv
+%dir %{_datadir}/advance
+%dir %{_datadir}/advance/artwork
+%dir %{_datadir}/advance/rom
+%dir %{_datadir}/advance/sample
+%{_datadir}/advance/safequit.dat
diff --git a/advancepac-format.patch b/advancepac-format.patch
new file mode 100644
index 0000000..3ac8c97
--- /dev/null
+++ b/advancepac-format.patch
@@ -0,0 +1,48 @@
+--- advancepac-0.58.0/srcpac/usrintrf.c.orig	2024-04-21 12:21:48.377598918 +0200
++++ advancepac-0.58.0/srcpac/usrintrf.c	2024-04-21 12:26:45.782654403 +0200
+@@ -1954,9 +1954,9 @@ static int settraksettings(struct mame_b
+ 				case 1:
+ 					strcat (label[i], ui_getstring (UI_reverse));
+ 					if (reverse)
+-						sprintf(setting[i],ui_getstring (UI_on));
++						strcpy(setting[i],ui_getstring (UI_on));
+ 					else
+-						sprintf(setting[i],ui_getstring (UI_off));
++						strcpy(setting[i],ui_getstring (UI_off));
+ 					if (i == sel) arrowize = 3;
+ 					break;
+ 				case 2:
+@@ -1967,9 +1967,9 @@ static int settraksettings(struct mame_b
+ 				case 3:
+ 					strcat (label[i], ui_getstring (UI_center));
+ 					if (center)
+-						sprintf(setting[i],ui_getstring (UI_on));
++						strcpy(setting[i],ui_getstring (UI_on));
+ 					else
+-						sprintf(setting[i],ui_getstring (UI_off));
++						strcpy(setting[i],ui_getstring (UI_off));
+ 					if (i == sel) arrowize = 3;
+ 					break;
+ 			}
+--- advancepac-0.58.0/srcpac/info.c.orig	2024-04-21 12:27:14.269166745 +0200
++++ advancepac-0.58.0/srcpac/info.c	2024-04-21 12:30:45.558022095 +0200
+@@ -307,7 +307,7 @@ static void print_game_rom(FILE* out, co
+ 			char name[100];
+ 			int offset, length, crc, in_parent;
+ 
+-			sprintf(name,ROM_GETNAME(rom));
++			strcpy(name,ROM_GETNAME(rom));
+ 			offset = ROM_GETOFFSET(rom);
+ 			crc = ROM_GETCRC(rom);
+ 
+--- advancepac-0.58.0/advance/v/v.c.orig	2002-04-26 10:03:40.000000000 +0200
++++ advancepac-0.58.0/advance/v/v.c	2024-04-21 13:11:07.564900957 +0200
+@@ -1976,7 +1976,7 @@ int os_main(int argc, char* argv[]) {
+ 	video_crtc_container_init(&selected);
+ 
+ 	if (video_crtc_container_load(the_config, &selected) != 0) {
+-		fprintf(stderr,video_error_description_get());
++		fputs(video_error_description_get(), stderr);
+ 		goto err_video;
+ 	}
+ 
diff --git a/advancepac-includes.patch b/advancepac-includes.patch
new file mode 100644
index 0000000..5228a1f
--- /dev/null
+++ b/advancepac-includes.patch
@@ -0,0 +1,11 @@
+--- advancepac-0.58.0/advance/common/option.h.orig	2002-04-26 10:03:39.000000000 +0200
++++ advancepac-0.58.0/advance/common/option.h	2024-04-21 13:14:58.716982032 +0200
+@@ -21,6 +21,8 @@
+ #ifndef __OPTION_H
+ #define __OPTION_H
+ 
++#include <strings.h>
++
+ inline int optionmatch(const char* arg, const char* opt) {
+ 	return (arg[0] == '-' || arg[0] == '/') && strcasecmp(arg+1,opt) == 0;
+ }
diff --git a/advancepac-link.patch b/advancepac-link.patch
new file mode 100644
index 0000000..94b2aab
--- /dev/null
+++ b/advancepac-link.patch
@@ -0,0 +1,31 @@
+--- advancepac-0.58.0/makefile.orig	2002-04-26 10:03:38.000000000 +0200
++++ advancepac-0.58.0/makefile	2024-04-21 13:29:58.868772158 +0200
+@@ -290,7 +290,7 @@ TARGETLDFLAGS += -Xlinker -Map -Xlinker
+ endif
+ 
+ # Target LIBS
+-TARGETLIBS += -lz
++TARGETLIBS += -lm -lz
+ 
+ ifeq ($(TARGET),mess)
+ include $(TARGETSRC)/core.mak
+--- advancepac-0.58.0/advance/advance.mak.orig	2002-04-26 10:03:38.000000000 +0200
++++ advancepac-0.58.0/advance/advance.mak	2024-04-21 14:55:23.751008288 +0200
+@@ -454,7 +454,7 @@ ifeq ($(HOST_TARGET),linux)
+ VCFLAGS += \
+ 	-DUSE_VIDEO_SVGALIB -DUSE_VIDEO_FB -DUSE_VIDEO_SLANG \
+ 	-DUSE_INPUT_SVGALIB
+-VLIBS = -lslang -lvga
++VLIBS = -lslang -lvga -lm
+ VOBJS += \
+ 	$(VOBJ)/$(HOST_TARGET)/os.o \
+ 	$(VOBJ)/$(HOST_TARGET)/vsvgab.o \
+@@ -650,7 +650,7 @@ CFGCFLAGS += \
+ 	-DUSE_VIDEO_SVGALIB -DUSE_VIDEO_FB -DUSE_VIDEO_SLANG \
+ 	-DUSE_INPUT_SVGALIB \
+ 	-Iadvance/$(HOST_TARGET)
+-CFGLIBS = -lslang -lvga
++CFGLIBS = -lslang -lvga -lm
+ CFGOBJS += \
+ 	$(CFGOBJ)/$(HOST_TARGET)/os.o \
+ 	$(CFGOBJ)/$(HOST_TARGET)/vsvgab.o \
diff --git a/advancepac-no-common.patch b/advancepac-no-common.patch
new file mode 100644
index 0000000..b5828f1
--- /dev/null
+++ b/advancepac-no-common.patch
@@ -0,0 +1,32 @@
+--- advancepac-0.58.0/advance/lib/sounddrv.h.orig	2002-04-26 10:03:39.000000000 +0200
++++ advancepac-0.58.0/advance/lib/sounddrv.h	2024-04-21 12:59:02.308830007 +0200
+@@ -82,7 +82,7 @@ struct sound_state_struct {
+ 	char name[DEVICE_NAME_MAX];
+ };
+ 
+-struct sound_state_struct sound_state;
++extern struct sound_state_struct sound_state;
+ 
+ void sound_reg(struct conf_context* config_context);
+ void sound_reg_driver(struct conf_context* config_context, sound_driver* driver);
+--- advancepac-0.58.0/advance/lib/sounddrv.c.orig	2002-04-26 10:03:39.000000000 +0200
++++ advancepac-0.58.0/advance/lib/sounddrv.c	2024-04-21 15:27:01.474060773 +0200
+@@ -35,6 +35,8 @@
+ #include <stdio.h>
+ #include <string.h>
+ 
++struct sound_state_struct sound_state;
++
+ void sound_default(void) {
+ 	sound_state.is_initialized_flag = 1;
+ 	strcpy(sound_state.name, "auto");
+--- advancepac-0.58.0/srcpac/cpu/m68000/m68kmame.c.orig	2024-04-21 12:54:31.306964816 +0200
++++ advancepac-0.58.0/srcpac/cpu/m68000/m68kmame.c	2024-04-21 12:59:56.818534702 +0200
+@@ -6,7 +6,6 @@
+ 
+ /* global access */
+ 
+-int m68k_ICount;
+ struct m68k_memory_interface m68k_memory_intf;
+ 
+ #ifndef A68K0
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/advancepac.git/commitdiff/20b5e4cfaedd421633b811d6febabf592a4cfc73



More information about the pld-cvs-commit mailing list