host: Reorganise host-tools layout and add limine-version. Closes #196
This commit is contained in:
parent
2a448febb3
commit
82e62a9678
5
.github/workflows/release.yml
vendored
5
.github/workflows/release.yml
vendored
@ -41,11 +41,14 @@ jobs:
|
||||
- name: Build the bootloader
|
||||
run: make -C build
|
||||
|
||||
- name: Clean limine-version
|
||||
run: rm build/bin/limine-version
|
||||
|
||||
- name: Clean limine-deploy
|
||||
run: rm build/bin/limine-deploy
|
||||
|
||||
- name: Build limine-deploy-win32
|
||||
run: make -C build CC="i686-w64-mingw32-gcc" CFLAGS="-O2 -pipe" limine-deploy
|
||||
run: make -C build/bin CC="i686-w64-mingw32-gcc" CFLAGS="-O2 -pipe" limine-deploy
|
||||
|
||||
- name: Strip limine-deploy-win32
|
||||
run: i686-w64-mingw32-strip build/bin/limine-deploy.exe
|
||||
|
@ -62,19 +62,33 @@ override LIMINE_VERSION := @PACKAGE_VERSION@
|
||||
override STAGE1_FILES := $(shell find '$(call SHESCAPE,$(SRCDIR))/stage1' -type f -name '*.asm')
|
||||
|
||||
.PHONY: all
|
||||
all: @BUILD_UEFI_X86_64@ @BUILD_UEFI_IA32@ @BUILD_BIOS@
|
||||
all: limine-version @BUILD_UEFI_X86_64@ @BUILD_UEFI_IA32@ @BUILD_BIOS@
|
||||
$(MAKE) '$(call SHESCAPE,$(BINDIR))/limine-cd-efi.bin'
|
||||
|
||||
$(call MKESCAPE,$(BINDIR))/limine-deploy: $(call MKESCAPE,$(SRCDIR))/limine-deploy/limine-deploy.c $(call MKESCAPE,$(BINDIR))/limine-hdd.bin
|
||||
$(call MKESCAPE,$(BINDIR))/limine-hdd.h: $(call MKESCAPE,$(BINDIR))/limine-hdd.bin
|
||||
mkdir -p '$(call SHESCAPE,$(BINDIR))'
|
||||
cd '$(call SHESCAPE,$(BINDIR))' && '$(call SHESCAPE,$(SRCDIR))/limine-deploy/hgen.sh' >limine-hdd.h
|
||||
cp '$(call SHESCAPE,$(SRCDIR))/limine-deploy/Makefile' '$(call SHESCAPE,$(SRCDIR))/limine-deploy/limine-deploy.c' '$(call SHESCAPE,$(SRCDIR))/limine-deploy/.gitignore' '$(call SHESCAPE,$(BINDIR))/'
|
||||
$(MAKE) -C '$(call SHESCAPE,$(BINDIR))'
|
||||
cd '$(call SHESCAPE,$(BINDIR))' && '$(call SHESCAPE,$(SRCDIR))/host/hgen.sh' >limine-hdd.h
|
||||
|
||||
$(call MKESCAPE,$(BINDIR))/limine-deploy: $(call MKESCAPE,$(BINDIR))/Makefile $(call MKESCAPE,$(SRCDIR))/host/limine-deploy.c $(call MKESCAPE,$(BINDIR))/limine-hdd.h
|
||||
cp '$(call SHESCAPE,$(SRCDIR))/host/limine-deploy.c' '$(call SHESCAPE,$(BINDIR))/'
|
||||
$(MAKE) -C '$(call SHESCAPE,$(BINDIR))' limine-deploy
|
||||
|
||||
$(call MKESCAPE,$(BINDIR))/limine-version: $(call MKESCAPE,$(BINDIR))/Makefile $(call MKESCAPE,$(SRCDIR))/host/limine-version.c
|
||||
$(SED) 's/@LIMINE_VERSION@/@PACKAGE_VERSION@/g' <'$(call SHESCAPE,$(SRCDIR))/host/limine-version.c' >'$(call SHESCAPE,$(BINDIR))/limine-version.c'
|
||||
$(MAKE) -C '$(call SHESCAPE,$(BINDIR))' limine-version
|
||||
|
||||
$(call MKESCAPE,$(BINDIR))/Makefile: $(call MKESCAPE,$(SRCDIR))/host/Makefile $(call MKESCAPE,$(SRCDIR))/host/.gitignore
|
||||
mkdir -p '$(call SHESCAPE,$(BINDIR))'
|
||||
cp '$(call SHESCAPE,$(SRCDIR))/host/Makefile' '$(call SHESCAPE,$(SRCDIR))/host/.gitignore' '$(call SHESCAPE,$(BINDIR))/'
|
||||
|
||||
.PHONY: limine-deploy
|
||||
limine-deploy:
|
||||
$(MAKE) '$(call SHESCAPE,$(BINDIR))/limine-deploy'
|
||||
|
||||
.PHONY: limine-version
|
||||
limine-version:
|
||||
$(MAKE) '$(call SHESCAPE,$(BINDIR))/limine-version'
|
||||
|
||||
.PHONY: clean
|
||||
clean: limine-bios-clean limine-uefi-ia32-clean limine-uefi-x86-64-clean
|
||||
rm -rf '$(call SHESCAPE,$(BINDIR))' '$(call SHESCAPE,$(BUILDDIR))/stage1.stamp'
|
||||
@ -95,15 +109,18 @@ install-data: all
|
||||
.PHONY: install-strip
|
||||
install-strip: install-data
|
||||
$(INSTALL) -d '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))'
|
||||
$(INSTALL) -s '$(call SHESCAPE,$(BINDIR))/limine-version' '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))/'
|
||||
$(INSTALL) -s '$(call SHESCAPE,$(BINDIR))/limine-deploy' '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))/' || true
|
||||
|
||||
.PHONY: install
|
||||
install: install-data
|
||||
$(INSTALL) -d '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))'
|
||||
$(INSTALL) '$(call SHESCAPE,$(BINDIR))/limine-version' '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))/'
|
||||
$(INSTALL) '$(call SHESCAPE,$(BINDIR))/limine-deploy' '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))/' || true
|
||||
|
||||
.PHONY: uninstall
|
||||
uninstall:
|
||||
rm -f '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))/limine-version'
|
||||
rm -f '$(call SHESCAPE,$(DESTDIR)$(ACBINDIR))/limine-deploy'
|
||||
rm -rf '$(call SHESCAPE,$(DESTDIR)$(ACDATAROOTDIR))/limine'
|
||||
rm -f '$(call SHESCAPE,$(DESTDIR)$(ACINCLUDEDIR))/limine.h'
|
||||
|
4
host/.gitignore
vendored
Normal file
4
host/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
limine-deploy
|
||||
limine-deploy.exe
|
||||
limine-version
|
||||
limine-version.exe
|
@ -6,7 +6,7 @@ PREFIX ?= /usr/local
|
||||
CFLAGS ?= -g -O2 -pipe -Wall -Wextra
|
||||
|
||||
.PHONY: all
|
||||
all: limine-deploy
|
||||
all: limine-deploy limine-version
|
||||
|
||||
.PHONY: install-data
|
||||
install-data: all
|
||||
@ -25,15 +25,21 @@ install-data: all
|
||||
install: install-data
|
||||
$(INSTALL) -d '$(DESTDIR)$(PREFIX)/bin'
|
||||
$(INSTALL) limine-deploy '$(DESTDIR)$(PREFIX)/bin/'
|
||||
$(INSTALL) limine-version '$(DESTDIR)$(PREFIX)/bin/'
|
||||
|
||||
.PHONY: install-strip
|
||||
install-strip: install-data
|
||||
$(INSTALL) -d '$(DESTDIR)$(PREFIX)/bin'
|
||||
$(INSTALL) -s limine-deploy '$(DESTDIR)$(PREFIX)/bin/'
|
||||
$(INSTALL) -s limine-version '$(DESTDIR)$(PREFIX)/bin/'
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -f limine-deploy limine-deploy.exe
|
||||
rm -f limine-version limine-version.exe
|
||||
|
||||
limine-deploy: limine-deploy.c
|
||||
$(CC) $(CFLAGS) $(LDFLAGS) -std=c99 -D__USE_MINGW_ANSI_STDIO limine-deploy.c -o $@
|
||||
|
||||
limine-version: limine-version.c
|
||||
$(CC) $(CFLAGS) $(LDFLAGS) -std=c99 -D__USE_MINGW_ANSI_STDIO limine-version.c -o $@
|
7
host/limine-version.c
Normal file
7
host/limine-version.c
Normal file
@ -0,0 +1,7 @@
|
||||
#include <stdio.h>
|
||||
|
||||
#define LIMINE_VERSION "@LIMINE_VERSION@"
|
||||
|
||||
int main(void) {
|
||||
puts(LIMINE_VERSION);
|
||||
}
|
2
limine-deploy/.gitignore
vendored
2
limine-deploy/.gitignore
vendored
@ -1,2 +0,0 @@
|
||||
limine-deploy
|
||||
limine-deploy.exe
|
Loading…
Reference in New Issue
Block a user