diff --git a/parts.rst b/parts.rst index c153143..fa6ade8 100644 --- a/parts.rst +++ b/parts.rst @@ -110,13 +110,6 @@ sed 4.0.9 You are most likely aware of GNU ``sed``, a line editor. -patch 2.5.9 -=========== - -``patch`` is a very useful tool at this stage, allowing us to make -significantly more complex edits, including just changes to lines. -Luckily, we are able to patch ``patch`` using ``sed`` only. - make 3.80 ========= @@ -124,6 +117,13 @@ GNU ``make`` is now built so we have a more robust building system. ``make`` allows us to do things like define rules for files rather than writing complex kaem scripts. +patch 2.5.9 +=========== + +``patch`` is a very useful tool at this stage, allowing us to make +significantly more complex edits, including just changes to lines. +Luckily, we are able to patch ``patch`` using ``sed`` only. + bzip2 1.0.8 =========== diff --git a/sysa/after.kaem b/sysa/after.kaem index 3304db6..2511e4e 100755 --- a/sysa/after.kaem +++ b/sysa/after.kaem @@ -94,14 +94,14 @@ cd ${pkg} kaem --file ${pkg}.kaem cd .. -# patch -pkg="patch-2.5.9" +# make +pkg="make-3.80" cd ${pkg} kaem --file ${pkg}.kaem cd .. -# make -pkg="make-3.80" +# patch +pkg="patch-2.5.9" cd ${pkg} kaem --file ${pkg}.kaem cd .. diff --git a/sysa/patch-2.5.9/checksums b/sysa/patch-2.5.9/checksums index da22ee7..39a2bde 100644 --- a/sysa/patch-2.5.9/checksums +++ b/sysa/patch-2.5.9/checksums @@ -1 +1 @@ -19ead2cf81b112f2e8907089954915eeae36d78df6bf1d2e72a0d7fc15c4483b /usr/bin/patch +b229f2fcab31c1b01012cf30f397fc013cdd6404cb5cbb134aba9dfb745cbed6 /usr/bin/patch diff --git a/sysa/patch-2.5.9/mk/main.mk b/sysa/patch-2.5.9/mk/main.mk new file mode 100644 index 0000000..6f7e39f --- /dev/null +++ b/sysa/patch-2.5.9/mk/main.mk @@ -0,0 +1,15 @@ +# SPDX-FileCopyrightText: 2022 Andrius Štikonas +# +# SPDX-License-Identifier: GPL-3.0-or-later + +CC = tcc + +CFLAGS = -I . +CPPFLAGS = -DHAVE_DECL_GETENV -DHAVE_DECL_MALLOC -DHAVE_DIRENT_H -DHAVE_LIMITS_H -DHAVE_GETEUID -DHAVE_MKTEMP -DPACKAGE_BUGREPORT= -Ded_PROGRAM=\"/nullop\" -Dmbstate_t=void -DRETSIGTYPE=int -DHAVE_MKDIR -DHAVE_RMDIR -DHAVE_FCNTL_H -DPACKAGE_NAME=\"patch\" -DPACKAGE_VERSION=\"2.5.9\" -DHAVE_MALLOC -DHAVE_REALLOC -DSTDC_HEADERS -DHAVE_STRING_H -DHAVE_STDLIB_H +LDFLAGS = -static + +.PHONY: all +all: patch + +patch: error.o getopt.o getopt1.o addext.o argmatch.o backupfile.o basename.o dirname.o inp.o maketime.o partime.o patch.o pch_patched.o quote.o quotearg.o quotesys.o util.o version.o xmalloc.o + $(CC) $^ $(LDFLAGS) -o $@ diff --git a/sysa/patch-2.5.9/patch-2.5.9.kaem b/sysa/patch-2.5.9/patch-2.5.9.kaem index 75a3ed4..d6033dd 100755 --- a/sysa/patch-2.5.9/patch-2.5.9.kaem +++ b/sysa/patch-2.5.9/patch-2.5.9.kaem @@ -14,6 +14,7 @@ cp ${sources}/${pkg}.tar.gz ../src/ gunzip -f ../src/${pkg}.tar.gz tar xf ../src/${pkg}.tar cd ${pkg} +cp ../../mk/main.mk Makefile # Create config.h and patchlevel.h catm config.h @@ -24,31 +25,13 @@ cp pch.c pch_patched.c sed -i 841,848d pch_patched.c # Compile -tcc -c error.c -tcc -c getopt.c -tcc -c getopt1.c -tcc -c -I. addext.c -tcc -c -I. argmatch.c -tcc -c -I. -DHAVE_DECL_GETENV -DHAVE_DECL_MALLOC -DHAVE_DIRENT_H -Dsize_t="unsigned long" backupfile.c -tcc -c -I. -Dsize_t="unsigned long" basename.c -tcc -c -I. -Dsize_t="unsigned long" dirname.c -tcc -c -I. -DHAVE_LIMITS_H -DHAVE_GETEUID inp.c -tcc -c -I. maketime.c -tcc -c -I. -Dsize_t="unsigned long" partime.c -tcc -c -I. -DHAVE_MKTEMP -DHAVE_LIMITS_H -DHAVE_GETEUID -DPACKAGE_BUGREPORT= patch.c -tcc -c -I. -Ded_PROGRAM=\"/nullop\" -DHAVE_LIMITS_H -DHAVE_GETEUID pch_patched.c -tcc -c -I. quote.c -tcc -c -I. -Dmbstate_t=void -Dsize_t="unsigned long" quotearg.c -tcc -c -I. quotesys.c -tcc -c -I. -DRETSIGTYPE=int -Dsize_t="unsigned long" -DHAVE_MKDIR -DHAVE_RMDIR -DHAVE_LIMITS_H -DHAVE_GETEUID -DHAVE_FCNTL_H util.c -tcc -c -I. -DPACKAGE_NAME=\"patch\" -DPACKAGE_VERSION=\"2.5.9\" version.c -tcc -c -I. -DHAVE_MALLOC -DHAVE_REALLOC xmalloc.c -# Link -tcc -static -o ${bindir}/patch error.o getopt.o getopt1.o addext.o argmatch.o backupfile.o basename.o dirname.o inp.o maketime.o partime.o patch.o pch_patched.o quote.o quotearg.o quotesys.o util.o version.o xmalloc.o +# Build +make -f Makefile PREFIX=${prefix} -# Test -patch --version +# Install +cp patch ${prefix}/bin/patch +chmod 755 ${prefix}/bin/patch cd ../..