summaryrefslogtreecommitdiff
path: root/python-superdupermetroid.spec
blob: 45327690366597a305ba7dbe2e3e41f21f73d2b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
%global _empty_manifest_terminate_build 0
Name:		python-SuperDuperMetroid
Version:	2.3.2
Release:	1
Summary:	A Super Metroid patching utility
License:	MIT License
URL:		https://github.com/SolventMercury/Super-Duper-Metroid
Source0:	https://mirrors.aliyun.com/pypi/web/packages/61/0c/aeb3f051da8fd18265073253c3c0a3f946ad1b463a986b4d99c82af108eb/SuperDuperMetroid-2.3.2.tar.gz


%description
NOTE: This project has no relation to the romhack of the same name.  
  
# Super-Duper-Metroid
Super Duper Metroid is a Super Metroid patcher and interface program, intended for use with randomizer programs. SDM is a **work in progress**, and is likely very broken in its current state. SDM requires an installation of Python 3 to work, although I haven't done any testing to determine which versions precisely work, and requires a Headerless ROM file to modify. Remember that video game piracy is a crime - only use legally obtained copies of the game Super Metroid with this program. Has been tested for NTSC.

# Building
Requires an adequate version of python  
Steps:  
1.) Clone this repository  
2.) Open a terminal in the repository's root  
3.) Create a virtual environment by running `py -3.9 -m venv venv`  
4.) Open virtual environment with `venv\scripts\activate`  
5.) Install requirements by running `python -m pip install -r requirements.txt`  
6.) Build Cython code by running `python setup.py`  
7.) Install as editable by running `py -3.9 -m pip install -e .`
  
You can now run scripts from the project from terminal, using the virtual environment.  

# Credit
Credit goes to Samuel Roy for writing most of this code.  
Kazuto wrote the More Efficient Item PLMs Hack, which is recreated in parts of this code.  
Metroid Construction and Kejardon provided a lot of documentation which I made use of.  
PHOSPHOTiDYL wrote the Skip Intro Saves hack, which is included in this program.  
Smiley and Flo wrote the Cheap Charge IPS patch.  
[n00btube](https://github.com/n00btube) wrote the Save Refill patch.  
Total, Fusda, and Leodox were responsible for most of the other IPS patches.  


%package -n python3-SuperDuperMetroid
Summary:	A Super Metroid patching utility
Provides:	python-SuperDuperMetroid
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
BuildRequires:	python3-cffi
BuildRequires:	gcc
BuildRequires:	gdb
%description -n python3-SuperDuperMetroid
NOTE: This project has no relation to the romhack of the same name.  
  
# Super-Duper-Metroid
Super Duper Metroid is a Super Metroid patcher and interface program, intended for use with randomizer programs. SDM is a **work in progress**, and is likely very broken in its current state. SDM requires an installation of Python 3 to work, although I haven't done any testing to determine which versions precisely work, and requires a Headerless ROM file to modify. Remember that video game piracy is a crime - only use legally obtained copies of the game Super Metroid with this program. Has been tested for NTSC.

# Building
Requires an adequate version of python  
Steps:  
1.) Clone this repository  
2.) Open a terminal in the repository's root  
3.) Create a virtual environment by running `py -3.9 -m venv venv`  
4.) Open virtual environment with `venv\scripts\activate`  
5.) Install requirements by running `python -m pip install -r requirements.txt`  
6.) Build Cython code by running `python setup.py`  
7.) Install as editable by running `py -3.9 -m pip install -e .`
  
You can now run scripts from the project from terminal, using the virtual environment.  

# Credit
Credit goes to Samuel Roy for writing most of this code.  
Kazuto wrote the More Efficient Item PLMs Hack, which is recreated in parts of this code.  
Metroid Construction and Kejardon provided a lot of documentation which I made use of.  
PHOSPHOTiDYL wrote the Skip Intro Saves hack, which is included in this program.  
Smiley and Flo wrote the Cheap Charge IPS patch.  
[n00btube](https://github.com/n00btube) wrote the Save Refill patch.  
Total, Fusda, and Leodox were responsible for most of the other IPS patches.  


%package help
Summary:	Development documents and examples for SuperDuperMetroid
Provides:	python3-SuperDuperMetroid-doc
%description help
NOTE: This project has no relation to the romhack of the same name.  
  
# Super-Duper-Metroid
Super Duper Metroid is a Super Metroid patcher and interface program, intended for use with randomizer programs. SDM is a **work in progress**, and is likely very broken in its current state. SDM requires an installation of Python 3 to work, although I haven't done any testing to determine which versions precisely work, and requires a Headerless ROM file to modify. Remember that video game piracy is a crime - only use legally obtained copies of the game Super Metroid with this program. Has been tested for NTSC.

# Building
Requires an adequate version of python  
Steps:  
1.) Clone this repository  
2.) Open a terminal in the repository's root  
3.) Create a virtual environment by running `py -3.9 -m venv venv`  
4.) Open virtual environment with `venv\scripts\activate`  
5.) Install requirements by running `python -m pip install -r requirements.txt`  
6.) Build Cython code by running `python setup.py`  
7.) Install as editable by running `py -3.9 -m pip install -e .`
  
You can now run scripts from the project from terminal, using the virtual environment.  

# Credit
Credit goes to Samuel Roy for writing most of this code.  
Kazuto wrote the More Efficient Item PLMs Hack, which is recreated in parts of this code.  
Metroid Construction and Kejardon provided a lot of documentation which I made use of.  
PHOSPHOTiDYL wrote the Skip Intro Saves hack, which is included in this program.  
Smiley and Flo wrote the Cheap Charge IPS patch.  
[n00btube](https://github.com/n00btube) wrote the Save Refill patch.  
Total, Fusda, and Leodox were responsible for most of the other IPS patches.  


%prep
%autosetup -n SuperDuperMetroid-2.3.2

%build
%py3_build

%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
	find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
	find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
	find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
	find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
	find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .

%files -n python3-SuperDuperMetroid -f filelist.lst
%dir %{python3_sitearch}/*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Thu Jun 08 2023 Python_Bot <Python_Bot@openeuler.org> - 2.3.2-1
- Package Spec generated