-
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
10 changed files
with
403 additions
and
174 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,147 @@ | ||
# EzRe v1.0.2 GNUMakefile for Linux/Windows by Alex Free | ||
|
||
include variables.mk | ||
|
||
COMPILER_FLAGS+=-DVERSION=\"$(VERSION)\" | ||
|
||
$(PROGRAM): clean | ||
mkdir -p $(BUILD_DIR) | ||
|
||
# OPTIONAL, not default: Build C libraries to be used by the target executable. To enable this, you must replace `library-file*` with the actual name of the library, and you must set `BUILD_LIB=YES` in `variables.mk`. | ||
ifeq ("$(BUILD_LIB)","YES") | ||
$(COMPILER) $(COMPILER_FLAGS_LIB) -c library-files-dir/library-file.c -o $(BUILD_DIR)/library-file-object.o | ||
$(AR) rcs $(BUILD_DIR)/library-file-archive.a $(BUILD_DIR)/library-file-object.o | ||
|
||
ifeq ($(strip $(EXECUTABLE_NAME)),) | ||
$(COMPILER) $(COMPILER_FLAGS) $(SOURCE_FILES) -L./$(BUILD_DIR) -llibrary-file -o $(BUILD_DIR)/$(PROGRAM) | ||
else | ||
$(COMPILER) $(COMPILER_FLAGS) $(SOURCE_FILES) -L./$(BUILD_DIR) -llibrary-file -o $(BUILD_DIR)/$(EXECUTABLE_NAME) | ||
endif | ||
|
||
else # Default: Does not build any C libraries. `BUILD_LIB=NO` in `variables.mk`. | ||
mkdir -p $(BUILD_DIR) | ||
ifeq ($(strip $(EXECUTABLE_NAME)),) | ||
$(COMPILER) $(COMPILER_FLAGS) $(SOURCE_FILES) -o $(BUILD_DIR)/$(PROGRAM) | ||
else | ||
$(COMPILER) $(COMPILER_FLAGS) $(SOURCE_FILES) -o $(BUILD_DIR)/$(EXECUTABLE_NAME) | ||
endif | ||
|
||
endif | ||
|
||
.PHONY: deps-apt | ||
deps-apt: | ||
sudo apt update | ||
sudo apt install --yes $(BUILD_DEPENDS_APT) | ||
|
||
.PHONY: deps-dnf | ||
deps-dnf: | ||
sudo dnf update | ||
sudo dnf -y install $(BUILD_DEPENDS_DNF) | ||
|
||
.PHONY: clean | ||
clean: | ||
rm -rf $(BUILD_DIR)/$(PROGRAM).exe $(BUILD_DIR)/$(PROGRAM) $(BUILD_DIR)/*.o $(BUILD_DIR)/*.a | ||
|
||
.PHONY: clean-build | ||
clean-build: | ||
rm -rf $(BUILD_DIR) | ||
|
||
.PHONY: linux-i386 | ||
linux-i386: clean | ||
make $(PROGRAM) COMPILER_FLAGS='$(COMPILER_FLAGS_LINUX_X86) $(COMPILER_FLAGS)' COMPILER_FLAGS_LIB='$(COMPILER_FLAGS_LINUX_X86) $(COMPILER_FLAGS_LIB)' EXECUTABLE_NAME='$(PROGRAM).i386' | ||
|
||
.PHONY: linux-x86_64 | ||
linux-x86_64: clean | ||
make $(PROGRAM) EXECUTABLE_NAME='$(PROGRAM).x86_64' | ||
|
||
.PHONY: windows-i686 | ||
windows-i686: clean | ||
make $(PROGRAM) COMPILER=$(WINDOWS_I686_COMPILER) EXECUTABLE_NAME='$(PROGRAM).i686.exe' AR=$(WINDOWS_I686_AR) | ||
|
||
.PHONY: windows-x86_64 | ||
windows-x86_64: clean | ||
make $(PROGRAM) COMPILER=$(WINDOWS_X86_64_COMPILER) EXECUTABLE_NAME='$(PROGRAM).x86_64.exe' AR=$(WINDOWS_X86_64_AR) | ||
|
||
.PHONY: release | ||
release: | ||
rm -rf $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM) $(BUILD_DIR)/$(PROGRAM)-$(VERSION)-$(PLATFORM).zip | ||
mkdir $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM) | ||
ifeq ($(strip $(WINDOWS_RELEASE)),) | ||
cp $(BUILD_DIR)/$(EXECUTABLE_NAME) $(BUILD_DIR)/$(PROGRAM) | ||
cp -r $(BUILD_DIR)/$(PROGRAM) $(RELEASE_FILES) $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM) | ||
else | ||
cp $(BUILD_DIR)/$(EXECUTABLE_NAME) $(BUILD_DIR)/$(PROGRAM).exe | ||
cp -r $(BUILD_DIR)/$(PROGRAM).exe $(RELEASE_FILES) $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM) | ||
endif | ||
chmod -R 777 $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM) | ||
cd $(BUILD_DIR) && zip -rq $(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM).zip $(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM) | ||
rm -rf $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(PLATFORM) | ||
|
||
.PHONY: linux-i386-release | ||
linux-i386-release: linux-i386 | ||
ifeq ($(strip $(LINUX_SPECIFIC_RELEASE_FILES)),) | ||
make release PLATFORM='$(LINUX_I386_RELEASE_NAME_SUFFIX)' EXECUTABLE_NAME='$(PROGRAM).i386' | ||
else | ||
make release PLATFORM='$(LINUX_I386_RELEASE_NAME_SUFFIX)' RELEASE_FILES='$(LINUX_SPECIFIC_RELEASE_FILES) $(RELEASE_FILES)' EXECUTABLE_NAME='$(PROGRAM).i386' | ||
endif | ||
|
||
.PHONY: linux-x86_64-release | ||
linux-x86_64-release: linux-x86_64 | ||
ifeq ($(strip $(LINUX_SPECIFIC_RELEASE_FILES)),) | ||
make release PLATFORM='$(LINUX_X86_64_RELEASE_NAME_SUFFIX)' EXECUTABLE_NAME='$(PROGRAM).x86_64' | ||
else | ||
make release PLATFORM='$(LINUX_X86_64_RELEASE_NAME_SUFFIX)' RELEASE_FILES='$(LINUX_SPECIFIC_RELEASE_FILES) $(RELEASE_FILES)' EXECUTABLE_NAME='$(PROGRAM).x86_64' | ||
endif | ||
|
||
.PHONY: windows-i686-release | ||
windows-i686-release: windows-i686 | ||
ifeq ($(strip $(WINDOWS_SPECIFIC_RELEASE_FILES)),) | ||
make release PLATFORM='$(WINDOWS_I686_RELEASE_NAME_SUFFIX)' EXECUTABLE_NAME='$(PROGRAM).i686.exe' WINDOWS_RELEASE=true | ||
else | ||
make release PLATFORM='$(WINDOWS_I686_RELEASE_NAME_SUFFIX)' RELEASE_FILES='$(WINDOWS_SPECIFIC_RELEASE_FILES) $(RELEASE_FILES)' EXECUTABLE_NAME='$(PROGRAM).i686.exe' WINDOWS_RELEASE=true | ||
endif | ||
|
||
.PHONY: windows-x86_64-release | ||
windows-x86_64-release: windows-x86_64 | ||
ifeq ($(strip $(WINDOWS_SPECIFIC_RELEASE_FILES)),) | ||
make release PLATFORM='$(WINDOWS_X86_64_RELEASE_NAME_SUFFIX)' EXECUTABLE_NAME='$(PROGRAM).x86_64.exe' WINDOWS_RELEASE=true | ||
else | ||
make release PLATFORM='$(WINDOWS_X86_64_RELEASE_NAME_SUFFIX)' RELEASE_FILES='$(WINDOWS_SPECIFIC_RELEASE_FILES) $(RELEASE_FILES)' EXECUTABLE_NAME='$(PROGRAM).x86_64.exe' WINDOWS_RELEASE=true | ||
endif | ||
|
||
.PHONY: linux-i386-deb | ||
linux-i386-deb: linux-i386 | ||
rm -rf $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_I386_RELEASE_NAME_SUFFIX) | ||
mkdir -p $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_I386_RELEASE_NAME_SUFFIX)/usr/bin | ||
mkdir -p $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_I386_RELEASE_NAME_SUFFIX)/DEBIAN | ||
cp $(BUILD_DIR)/$(EXECUTABLE_NAME) $(BUILD_DIR)/$(PROGRAM) | ||
cp -r $(BUILD_DIR)/$(PROGRAM) $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_I386_RELEASE_NAME_SUFFIX)/usr/bin | ||
cp control-i386 $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_I386_RELEASE_NAME_SUFFIX)/DEBIAN/control | ||
dpkg-deb --build $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_I386_RELEASE_NAME_SUFFIX) | ||
rm -rf $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_I386_RELEASE_NAME_SUFFIX) | ||
|
||
.PHONY: linux-x86_64-deb | ||
linux-x86_64-deb: linux-x86_64 | ||
rm -rf $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_X86_64_RELEASE_NAME_SUFFIX) | ||
mkdir -p $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_X86_64_RELEASE_NAME_SUFFIX)/usr/bin | ||
mkdir -p $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_X86_64_RELEASE_NAME_SUFFIX)/DEBIAN | ||
cp $(BUILD_DIR)/$(EXECUTABLE_NAME) $(BUILD_DIR)/$(PROGRAM) | ||
cp -r $(BUILD_DIR)/$(PROGRAM) $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_X86_64_RELEASE_NAME_SUFFIX)/usr/bin | ||
cp control-x86_64 $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_X86_64_RELEASE_NAME_SUFFIX)/DEBIAN/control | ||
dpkg-deb --build $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_X86_64_RELEASE_NAME_SUFFIX) | ||
rm -rf $(BUILD_DIR)/$(RELEASE_BASE_NAME)-$(VERSION)-$(LINUX_X86_64_RELEASE_NAME_SUFFIX) | ||
|
||
.PHONY: all | ||
all: | ||
make clean-build | ||
|
||
make linux-i386-release | ||
make linux-i386-deb EXECUTABLE_NAME='$(PROGRAM).i386' | ||
|
||
make linux-x86_64-release | ||
make linux-x86_64-deb EXECUTABLE_NAME='$(PROGRAM).x86_64' | ||
|
||
make windows-i686-release | ||
make windows-x86_64-release | ||
|
||
make clean |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
|
||
# Building From Source | ||
|
||
In the source directory, you may execute any of the following: | ||
|
||
`make deps-apt` - installs the build dependencies required to compile the program. | ||
|
||
`make` - creates an executable for x86_64 Linux. | ||
|
||
`make clean` - deletes only the generated executable file created by only executing `make`. | ||
|
||
`make clean-build` - deletes the generated build directory in it's entirety. | ||
|
||
`make all` - **generate all of the following:** | ||
|
||
### For Windows 95 OSR 2.5 and above, Pentium CPU minimum (32 bit) | ||
|
||
* Windows i686 static executable file. | ||
* Portable Windows i386 release .zip file. | ||
|
||
### For Windows x86_64 (64 bit) | ||
|
||
* Windows x86_64 static executable file. | ||
* Portable Windows x86_64 release .zip file. | ||
|
||
### For Linux 3.2.0 and above, 386 CPU minimum (32 bit) | ||
|
||
* Linux i386 static executable file. | ||
* Portable Linux i386 release .zip file. | ||
* Linux i386 release .deb file. | ||
|
||
### For Linux 3.2.0 and above, x86_64 (64 bit) | ||
|
||
* Linux x86_64 static executable file. | ||
* Portable Linux x86_64 release .zip file. | ||
* Linux x86_64 release .deb file. | ||
|
||
All output is found in the `build` directory created in the source directory. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# [Open95Keygen](readme.md) -> Changelog | ||
|
||
## Version 1.0.2 (2/16/2023) | ||
|
||
Changes: | ||
|
||
* Fixed a really old non-fatal bug (thanks [@JeanPaulLucien](https://github.com/JeanPaulLucien)!). | ||
* Cleaned up more code and added some comments. | ||
|
||
--------------------------------------------------------------------------------------------------- | ||
|
||
* [open95keygen-1.0.2-windows_x86](https://github.com/alex-free/open95keygen/releases/download/v1.0.2/open95keygen-1.0.2-windows_x86.zip) _For Windows 95 OSR 2.5 Or Newer (32-bit Windows)_ | ||
|
||
* [open95keygen-1.0.2-windows\_x86\_64](https://github.com/alex-free/open95keygen/releases/download/v1.0.2/open95keygen-1.0.2-windows_x86_64.zip) _For 64 bit Windows_ | ||
|
||
* [open95keygen-1.0.2-linux_x86](https://github.com/alex-free/open95keygen/releases/download/v1.0.2/open95keygen-1.0.2-linux_x86.zip) _For modern x86 Linux distros_ | ||
|
||
* [open95keygen-1.0.2-linux\_x86\_64](https://github.com/alex-free/open95keygen/releases/download/v1.0.2/open95keygen-1.0.2-linux_x86_64.zip) _For modern x86_64 Linux distros_ | ||
|
||
## Version 1.0.1 (2/13/2023) | ||
|
||
Changes: | ||
|
||
* Rewrote documentation in markdown. | ||
* Rewrote makefile. | ||
* Slight optimizations and better code clarity (it's been 2 years!). | ||
|
||
--------------------------------------------------------------------------------------------------- | ||
|
||
* [open95keygen-1.0.1-windows_x86](https://github.com/alex-free/open95keygen/releases/download/v1.0.1/open95keygen-1.0.1-windows_x86.zip) _For Windows 95 OSR 2.5 Or Newer (32-bit Windows)_ | ||
|
||
* [open95keygen-1.0.1-windows\_x86\_64](https://github.com/alex-free/open95keygen/releases/download/v1.0.1/open95keygen-1.0.1-windows_x86_64.zip) _For 64 bit Windows_ | ||
|
||
* [open95keygen-1.0.1-linux_x86](https://github.com/alex-free/open95keygen/releases/download/v1.0.1/open95keygen-1.0.1-linux_x86.zip) _For modern x86 Linux distros_ | ||
|
||
* [open95keygen-1.0.1-linux\_x86\_64](https://github.com/alex-free/open95keygen/releases/download/v1.0.1/open95keygen-1.0.1-linux_x86_64.zip) _For modern x86_64 Linux distros_ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
Package: open95keygen | ||
Version: 1.0.3 | ||
Maintainer: Alex Free | ||
Architecture: i386 | ||
Homepage: https://alex-free.github.io/open95keygen | ||
Description: Windows 95/NT 4.0 Retail/OEM keygen. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
Package: open95keygen | ||
Version: 1.0.3 | ||
Maintainer: Alex Free | ||
Architecture: amd64 | ||
Homepage: https://alex-free.github.io/open95keygen | ||
Description: Windows 95/NT 4.0 Retail/OEM keygen. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.