From 1b894fef00117044d640f9cbbd479c114973d3e8 Mon Sep 17 00:00:00 2001 From: Jakub Jirutka Date: Sat, 26 Nov 2016 01:19:33 +0100 Subject: main/http-parser: move from community (needed for nodejs-lts) --- .../0001-makefile-fix-DESTDIR-usage.patch | 64 ---------------------- .../0002-makefile-quote-variables.patch | 50 ----------------- ...x-SONAME-symlink-it-should-not-be-a-full-.patch | 35 ------------ ...04-makefile-add-CFLAGS-to-linking-command.patch | 31 ----------- ...0005-makefile-fix-install-rule-dependency.patch | 33 ----------- community/http-parser/APKBUILD | 51 ----------------- .../0001-makefile-fix-DESTDIR-usage.patch | 64 ++++++++++++++++++++++ .../0002-makefile-quote-variables.patch | 50 +++++++++++++++++ ...x-SONAME-symlink-it-should-not-be-a-full-.patch | 35 ++++++++++++ ...04-makefile-add-CFLAGS-to-linking-command.patch | 31 +++++++++++ ...0005-makefile-fix-install-rule-dependency.patch | 33 +++++++++++ main/http-parser/APKBUILD | 51 +++++++++++++++++ 12 files changed, 264 insertions(+), 264 deletions(-) delete mode 100644 community/http-parser/0001-makefile-fix-DESTDIR-usage.patch delete mode 100644 community/http-parser/0002-makefile-quote-variables.patch delete mode 100644 community/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch delete mode 100644 community/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch delete mode 100644 community/http-parser/0005-makefile-fix-install-rule-dependency.patch delete mode 100644 community/http-parser/APKBUILD create mode 100644 main/http-parser/0001-makefile-fix-DESTDIR-usage.patch create mode 100644 main/http-parser/0002-makefile-quote-variables.patch create mode 100644 main/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch create mode 100644 main/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch create mode 100644 main/http-parser/0005-makefile-fix-install-rule-dependency.patch create mode 100644 main/http-parser/APKBUILD diff --git a/community/http-parser/0001-makefile-fix-DESTDIR-usage.patch b/community/http-parser/0001-makefile-fix-DESTDIR-usage.patch deleted file mode 100644 index a819cf441d..0000000000 --- a/community/http-parser/0001-makefile-fix-DESTDIR-usage.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 7fbc87986baa09c342abb21e34613e8bbdc3c9c7 Mon Sep 17 00:00:00 2001 -From: hasufell -Date: Mon, 2 Nov 2015 16:24:43 +0100 -Subject: [PATCH 1/4] makefile: fix DESTDIR usage - -DESTDIR is not supposed to be set inside other variables. It is -standard to have this variable in install/uninstall rules, so it -can be reliably set separately no matter what other variables are set -to. -This also avoids potential bugs with setting SONAME or seds on -installed files (like pkgconfig) which then might include the -temporary DESTDIR directory. - -DESTDIR is really just for installing into a temporary directory or -a chroot, mostly used by package managers. ---- - Makefile | 20 ++++++++++---------- - 1 file changed, 10 insertions(+), 10 deletions(-) - -diff --git a/Makefile b/Makefile -index 33c8ba0..76153a0 100644 ---- a/Makefile -+++ b/Makefile -@@ -55,7 +55,7 @@ CFLAGS_LIB = $(CFLAGS_FAST) -fPIC - LDFLAGS_LIB = $(LDFLAGS) -shared - - INSTALL ?= install --PREFIX ?= $(DESTDIR)/usr/local -+PREFIX ?= /usr/local - LIBDIR = $(PREFIX)/lib - INCLUDEDIR = $(PREFIX)/include - -@@ -123,19 +123,19 @@ tags: http_parser.c http_parser.h test.c - ctags $^ - - install: library -- $(INSTALL) -D http_parser.h $(INCLUDEDIR)/http_parser.h -- $(INSTALL) -D $(SONAME) $(LIBDIR)/$(SONAME) -- ln -s $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) -+ $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h -+ $(INSTALL) -D $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) -+ ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) - - install-strip: library -- $(INSTALL) -D http_parser.h $(INCLUDEDIR)/http_parser.h -- $(INSTALL) -D -s $(SONAME) $(LIBDIR)/$(SONAME) -- ln -s $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) -+ $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h -+ $(INSTALL) -D -s $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) -+ ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) - - uninstall: -- rm $(INCLUDEDIR)/http_parser.h -- rm $(LIBDIR)/$(SONAME) -- rm $(LIBDIR)/libhttp_parser.so -+ rm $(DESTDIR)$(INCLUDEDIR)/http_parser.h -+ rm $(DESTDIR)$(LIBDIR)/$(SONAME) -+ rm $(DESTDIR)$(LIBDIR)/libhttp_parser.so - - clean: - rm -f *.o *.a tags test test_fast test_g \ --- -2.6.1 - diff --git a/community/http-parser/0002-makefile-quote-variables.patch b/community/http-parser/0002-makefile-quote-variables.patch deleted file mode 100644 index 096ac6b6bd..0000000000 --- a/community/http-parser/0002-makefile-quote-variables.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 9bce473ba7417b45bfdb59d4151a8857dcfff4ad Mon Sep 17 00:00:00 2001 -From: hasufell -Date: Mon, 2 Nov 2015 16:27:06 +0100 -Subject: [PATCH 2/4] makefile: quote variables - -Make does not take care of this in make rules. If any of the variables -DESTDIR, INCLUDEDIR or LIBDIR contain whitespaces, then the related -install command will fail. - -This is even more important for the uninstall rule. ---- - Makefile | 18 +++++++++--------- - 1 file changed, 9 insertions(+), 9 deletions(-) - -diff --git a/Makefile b/Makefile -index 76153a0..8c4a9d7 100644 ---- a/Makefile -+++ b/Makefile -@@ -123,19 +123,19 @@ tags: http_parser.c http_parser.h test.c - ctags $^ - - install: library -- $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h -- $(INSTALL) -D $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) -- ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) -+ $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" -+ $(INSTALL) -D $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" -+ ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" - - install-strip: library -- $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h -- $(INSTALL) -D -s $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) -- ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) -+ $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" -+ $(INSTALL) -D -s $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" -+ ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" - - uninstall: -- rm $(DESTDIR)$(INCLUDEDIR)/http_parser.h -- rm $(DESTDIR)$(LIBDIR)/$(SONAME) -- rm $(DESTDIR)$(LIBDIR)/libhttp_parser.so -+ rm "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" -+ rm "$(DESTDIR)$(LIBDIR)/$(SONAME)" -+ rm "$(DESTDIR)$(LIBDIR)/libhttp_parser.so" - - clean: - rm -f *.o *.a tags test test_fast test_g \ --- -2.6.1 - diff --git a/community/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch b/community/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch deleted file mode 100644 index cafe68d220..0000000000 --- a/community/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch +++ /dev/null @@ -1,35 +0,0 @@ -From f45b38c42e7e92a5d0215c44dcf306616536011e Mon Sep 17 00:00:00 2001 -From: hasufell -Date: Mon, 2 Nov 2015 16:32:11 +0100 -Subject: [PATCH 3/4] makefile: fix SONAME symlink, it should not be a full - path - -The symlink destination being a full path doesn't give any benefit and -may break a few use cases of copying these files to a different -destination, while preserving the symlink. ---- - Makefile | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/Makefile b/Makefile -index 8c4a9d7..cbe93e8 100644 ---- a/Makefile -+++ b/Makefile -@@ -125,12 +125,12 @@ tags: http_parser.c http_parser.h test.c - install: library - $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" - $(INSTALL) -D $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" -- ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" -+ ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" - - install-strip: library - $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" - $(INSTALL) -D -s $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" -- ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" -+ ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" - - uninstall: - rm "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" --- -2.6.1 - diff --git a/community/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch b/community/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch deleted file mode 100644 index e21cd71549..0000000000 --- a/community/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 62b1450cfe2e0df2d912279d38edf1b916020101 Mon Sep 17 00:00:00 2001 -From: hasufell -Date: Mon, 2 Nov 2015 16:39:31 +0100 -Subject: [PATCH 4/4] makefile: add CFLAGS to linking command - -Although we compile the objects explicitly there are some CFLAGS -that may also affect linking, which is not always obvious. - -This can also be a problem for toolchains that support multiple ABIs -and need to set CFLAGS=, which will cause linking -to either fail or produce an unusable executable/library. ---- - Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index cbe93e8..ae16f08 100644 ---- a/Makefile -+++ b/Makefile -@@ -102,7 +102,7 @@ libhttp_parser.o: http_parser.c http_parser.h Makefile - $(CC) $(CPPFLAGS_FAST) $(CFLAGS_LIB) -c http_parser.c -o libhttp_parser.o - - library: libhttp_parser.o -- $(CC) $(LDFLAGS_LIB) -o $(SONAME) $< -+ $(CC) $(CFLAGS_LIB) $(LDFLAGS_LIB) -o $(SONAME) $< - - package: http_parser.o - $(AR) rcs libhttp_parser.a http_parser.o --- -2.6.1 - diff --git a/community/http-parser/0005-makefile-fix-install-rule-dependency.patch b/community/http-parser/0005-makefile-fix-install-rule-dependency.patch deleted file mode 100644 index da96637306..0000000000 --- a/community/http-parser/0005-makefile-fix-install-rule-dependency.patch +++ /dev/null @@ -1,33 +0,0 @@ -From b67bfbe6a07529dd82e2ee83b6848d017e6e422f Mon Sep 17 00:00:00 2001 -From: hasufell -Date: Mon, 2 Nov 2015 16:51:28 +0100 -Subject: [PATCH 5/5] makefile: fix install rule dependency - -Otherwise the install rule will recompile the library, no matter -if it has already been compiled. ---- - Makefile | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/Makefile b/Makefile -index ae16f08..df0b59f 100644 ---- a/Makefile -+++ b/Makefile -@@ -122,12 +122,12 @@ parsertrace_g: http_parser_g.o contrib/parsertrace.c - tags: http_parser.c http_parser.h test.c - ctags $^ - --install: library -+install: $(SONAME) - $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" - $(INSTALL) -D $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" - ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" - --install-strip: library -+install-strip: $(SONAME) - $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" - $(INSTALL) -D -s $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" - ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" --- -2.6.1 - diff --git a/community/http-parser/APKBUILD b/community/http-parser/APKBUILD deleted file mode 100644 index b09115bcae..0000000000 --- a/community/http-parser/APKBUILD +++ /dev/null @@ -1,51 +0,0 @@ -# Contributor: Jakub Jirutka -# Maintainer: Jakub Jirutka -pkgname=http-parser -pkgver=2.7.1 -pkgrel=0 -pkgdesc="HTTP request/response parser for C" -url="https://github.com/nodejs/http-parser" -arch="all" -license="MIT" -depends="" -makedepends="" -subpackages="$pkgname-dev" -# Note: All the patches are copied from Gentoo ebuild. -# upstream: https://github.com/nodejs/http-parser/pull/272 -source="$pkgname-$pkgver.tar.gz::https://github.com/nodejs/$pkgname/archive/v$pkgver.tar.gz - 0001-makefile-fix-DESTDIR-usage.patch - 0002-makefile-quote-variables.patch - 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch - 0004-makefile-add-CFLAGS-to-linking-command.patch - 0005-makefile-fix-install-rule-dependency.patch - " -builddir="$srcdir/$pkgname-$pkgver" - -build() { - cd "$builddir" - make library -} - -package() { - cd "$builddir" - make install DESTDIR="$pkgdir" PREFIX="/usr" -} - -md5sums="31c6fefb6208b16d19b3f990e71cb04a http-parser-2.7.1.tar.gz -f6d5377fd3b5c91422bb2dcc2c4dce6c 0001-makefile-fix-DESTDIR-usage.patch -859eff808165458c797353f0306ebc65 0002-makefile-quote-variables.patch -8aea7eb27ae19ede7c8aed3d41c86d84 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch -23d1e43dbf2deffb38488d54cce62f96 0004-makefile-add-CFLAGS-to-linking-command.patch -fd7ffe7e725f866232f3b2850d164256 0005-makefile-fix-install-rule-dependency.patch" -sha256sums="70409ad324e5de2da6a0f39e859e566d497c1ff0a249c0c38a5012df91b386b3 http-parser-2.7.1.tar.gz -785012d9e0efb70c4dcc137f354ab57afabdcb0fb7c8cb2580c3c4a7e9add330 0001-makefile-fix-DESTDIR-usage.patch -80fdf673731f27f328d45f4da7daa613613d8db40f1dc84d2ce65fad0130c054 0002-makefile-quote-variables.patch -9854f5f205ec0959cc10cab80d16ff54f33a9979e5fd310ba9a4624b60c84ee9 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch -e69fa304327dbb0626edaf147b73dc9fb4718b656b225794a04937206929c0df 0004-makefile-add-CFLAGS-to-linking-command.patch -04898654adef3f3dbf1e29e66f8e9fc4467f68389e224beb03387d33ee263212 0005-makefile-fix-install-rule-dependency.patch" -sha512sums="c0fe86455db1a563a5c668f118dfa9a27b9a637ee1c0e2f2f18a5b816352436ed90435ea978e3f3d85b037d3c630234e47d609dc3b7086b898286c4e54d9f031 http-parser-2.7.1.tar.gz -ebb481df21cb312824ed65e7d6a3e7b237451071235566595da97c09b165767693ec3c47c27c451bfbdc2d62cc45c7d5d9f996b80789dc7fedaa2543c94c9065 0001-makefile-fix-DESTDIR-usage.patch -3637abedbf330af0f4a9721081db99fe0f6400322f21f77ab16d580546a9d200d40bc584e8dbb51adec249c2d468730c6e2487ccda3786626909d988b7f8856a 0002-makefile-quote-variables.patch -8202d665963234ce6dd84439f281921cb959424024c2fec8a27b65693b3466cab8674a3549d22fdb2fc07edf69f94440368ef77738ae4be2a5d94c13e3c814bb 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch -e18c163f2069795fb6b744ad9f6e44eb9efca7f560460a6759bc0121a404bfe8109031c0f43d36d4987bda3411e0a433dbab6d0eabb2dbb5c79f1ce878251aae 0004-makefile-add-CFLAGS-to-linking-command.patch -4cd120f406eeeb1e5a60c7d8955cdfead50d99b60f91a0fcdb2ae19403d08e5ed5619885c9e434ce40ffb442b317ee8c32ef636960429036f9bff92492f03968 0005-makefile-fix-install-rule-dependency.patch" diff --git a/main/http-parser/0001-makefile-fix-DESTDIR-usage.patch b/main/http-parser/0001-makefile-fix-DESTDIR-usage.patch new file mode 100644 index 0000000000..a819cf441d --- /dev/null +++ b/main/http-parser/0001-makefile-fix-DESTDIR-usage.patch @@ -0,0 +1,64 @@ +From 7fbc87986baa09c342abb21e34613e8bbdc3c9c7 Mon Sep 17 00:00:00 2001 +From: hasufell +Date: Mon, 2 Nov 2015 16:24:43 +0100 +Subject: [PATCH 1/4] makefile: fix DESTDIR usage + +DESTDIR is not supposed to be set inside other variables. It is +standard to have this variable in install/uninstall rules, so it +can be reliably set separately no matter what other variables are set +to. +This also avoids potential bugs with setting SONAME or seds on +installed files (like pkgconfig) which then might include the +temporary DESTDIR directory. + +DESTDIR is really just for installing into a temporary directory or +a chroot, mostly used by package managers. +--- + Makefile | 20 ++++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) + +diff --git a/Makefile b/Makefile +index 33c8ba0..76153a0 100644 +--- a/Makefile ++++ b/Makefile +@@ -55,7 +55,7 @@ CFLAGS_LIB = $(CFLAGS_FAST) -fPIC + LDFLAGS_LIB = $(LDFLAGS) -shared + + INSTALL ?= install +-PREFIX ?= $(DESTDIR)/usr/local ++PREFIX ?= /usr/local + LIBDIR = $(PREFIX)/lib + INCLUDEDIR = $(PREFIX)/include + +@@ -123,19 +123,19 @@ tags: http_parser.c http_parser.h test.c + ctags $^ + + install: library +- $(INSTALL) -D http_parser.h $(INCLUDEDIR)/http_parser.h +- $(INSTALL) -D $(SONAME) $(LIBDIR)/$(SONAME) +- ln -s $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) ++ $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h ++ $(INSTALL) -D $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) ++ ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) + + install-strip: library +- $(INSTALL) -D http_parser.h $(INCLUDEDIR)/http_parser.h +- $(INSTALL) -D -s $(SONAME) $(LIBDIR)/$(SONAME) +- ln -s $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) ++ $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h ++ $(INSTALL) -D -s $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) ++ ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) + + uninstall: +- rm $(INCLUDEDIR)/http_parser.h +- rm $(LIBDIR)/$(SONAME) +- rm $(LIBDIR)/libhttp_parser.so ++ rm $(DESTDIR)$(INCLUDEDIR)/http_parser.h ++ rm $(DESTDIR)$(LIBDIR)/$(SONAME) ++ rm $(DESTDIR)$(LIBDIR)/libhttp_parser.so + + clean: + rm -f *.o *.a tags test test_fast test_g \ +-- +2.6.1 + diff --git a/main/http-parser/0002-makefile-quote-variables.patch b/main/http-parser/0002-makefile-quote-variables.patch new file mode 100644 index 0000000000..096ac6b6bd --- /dev/null +++ b/main/http-parser/0002-makefile-quote-variables.patch @@ -0,0 +1,50 @@ +From 9bce473ba7417b45bfdb59d4151a8857dcfff4ad Mon Sep 17 00:00:00 2001 +From: hasufell +Date: Mon, 2 Nov 2015 16:27:06 +0100 +Subject: [PATCH 2/4] makefile: quote variables + +Make does not take care of this in make rules. If any of the variables +DESTDIR, INCLUDEDIR or LIBDIR contain whitespaces, then the related +install command will fail. + +This is even more important for the uninstall rule. +--- + Makefile | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) + +diff --git a/Makefile b/Makefile +index 76153a0..8c4a9d7 100644 +--- a/Makefile ++++ b/Makefile +@@ -123,19 +123,19 @@ tags: http_parser.c http_parser.h test.c + ctags $^ + + install: library +- $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h +- $(INSTALL) -D $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) +- ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) ++ $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" ++ $(INSTALL) -D $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" ++ ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" + + install-strip: library +- $(INSTALL) -D http_parser.h $(DESTDIR)$(INCLUDEDIR)/http_parser.h +- $(INSTALL) -D -s $(SONAME) $(DESTDIR)$(LIBDIR)/$(SONAME) +- ln -s $(LIBDIR)/$(SONAME) $(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT) ++ $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" ++ $(INSTALL) -D -s $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" ++ ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" + + uninstall: +- rm $(DESTDIR)$(INCLUDEDIR)/http_parser.h +- rm $(DESTDIR)$(LIBDIR)/$(SONAME) +- rm $(DESTDIR)$(LIBDIR)/libhttp_parser.so ++ rm "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" ++ rm "$(DESTDIR)$(LIBDIR)/$(SONAME)" ++ rm "$(DESTDIR)$(LIBDIR)/libhttp_parser.so" + + clean: + rm -f *.o *.a tags test test_fast test_g \ +-- +2.6.1 + diff --git a/main/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch b/main/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch new file mode 100644 index 0000000000..cafe68d220 --- /dev/null +++ b/main/http-parser/0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch @@ -0,0 +1,35 @@ +From f45b38c42e7e92a5d0215c44dcf306616536011e Mon Sep 17 00:00:00 2001 +From: hasufell +Date: Mon, 2 Nov 2015 16:32:11 +0100 +Subject: [PATCH 3/4] makefile: fix SONAME symlink, it should not be a full + path + +The symlink destination being a full path doesn't give any benefit and +may break a few use cases of copying these files to a different +destination, while preserving the symlink. +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 8c4a9d7..cbe93e8 100644 +--- a/Makefile ++++ b/Makefile +@@ -125,12 +125,12 @@ tags: http_parser.c http_parser.h test.c + install: library + $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" + $(INSTALL) -D $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" +- ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" ++ ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" + + install-strip: library + $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" + $(INSTALL) -D -s $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" +- ln -s $(LIBDIR)/$(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" ++ ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" + + uninstall: + rm "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" +-- +2.6.1 + diff --git a/main/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch b/main/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch new file mode 100644 index 0000000000..e21cd71549 --- /dev/null +++ b/main/http-parser/0004-makefile-add-CFLAGS-to-linking-command.patch @@ -0,0 +1,31 @@ +From 62b1450cfe2e0df2d912279d38edf1b916020101 Mon Sep 17 00:00:00 2001 +From: hasufell +Date: Mon, 2 Nov 2015 16:39:31 +0100 +Subject: [PATCH 4/4] makefile: add CFLAGS to linking command + +Although we compile the objects explicitly there are some CFLAGS +that may also affect linking, which is not always obvious. + +This can also be a problem for toolchains that support multiple ABIs +and need to set CFLAGS=, which will cause linking +to either fail or produce an unusable executable/library. +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index cbe93e8..ae16f08 100644 +--- a/Makefile ++++ b/Makefile +@@ -102,7 +102,7 @@ libhttp_parser.o: http_parser.c http_parser.h Makefile + $(CC) $(CPPFLAGS_FAST) $(CFLAGS_LIB) -c http_parser.c -o libhttp_parser.o + + library: libhttp_parser.o +- $(CC) $(LDFLAGS_LIB) -o $(SONAME) $< ++ $(CC) $(CFLAGS_LIB) $(LDFLAGS_LIB) -o $(SONAME) $< + + package: http_parser.o + $(AR) rcs libhttp_parser.a http_parser.o +-- +2.6.1 + diff --git a/main/http-parser/0005-makefile-fix-install-rule-dependency.patch b/main/http-parser/0005-makefile-fix-install-rule-dependency.patch new file mode 100644 index 0000000000..da96637306 --- /dev/null +++ b/main/http-parser/0005-makefile-fix-install-rule-dependency.patch @@ -0,0 +1,33 @@ +From b67bfbe6a07529dd82e2ee83b6848d017e6e422f Mon Sep 17 00:00:00 2001 +From: hasufell +Date: Mon, 2 Nov 2015 16:51:28 +0100 +Subject: [PATCH 5/5] makefile: fix install rule dependency + +Otherwise the install rule will recompile the library, no matter +if it has already been compiled. +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index ae16f08..df0b59f 100644 +--- a/Makefile ++++ b/Makefile +@@ -122,12 +122,12 @@ parsertrace_g: http_parser_g.o contrib/parsertrace.c + tags: http_parser.c http_parser.h test.c + ctags $^ + +-install: library ++install: $(SONAME) + $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" + $(INSTALL) -D $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" + ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" + +-install-strip: library ++install-strip: $(SONAME) + $(INSTALL) -D http_parser.h "$(DESTDIR)$(INCLUDEDIR)/http_parser.h" + $(INSTALL) -D -s $(SONAME) "$(DESTDIR)$(LIBDIR)/$(SONAME)" + ln -s $(SONAME) "$(DESTDIR)$(LIBDIR)/libhttp_parser.$(SOEXT)" +-- +2.6.1 + diff --git a/main/http-parser/APKBUILD b/main/http-parser/APKBUILD new file mode 100644 index 0000000000..b09115bcae --- /dev/null +++ b/main/http-parser/APKBUILD @@ -0,0 +1,51 @@ +# Contributor: Jakub Jirutka +# Maintainer: Jakub Jirutka +pkgname=http-parser +pkgver=2.7.1 +pkgrel=0 +pkgdesc="HTTP request/response parser for C" +url="https://github.com/nodejs/http-parser" +arch="all" +license="MIT" +depends="" +makedepends="" +subpackages="$pkgname-dev" +# Note: All the patches are copied from Gentoo ebuild. +# upstream: https://github.com/nodejs/http-parser/pull/272 +source="$pkgname-$pkgver.tar.gz::https://github.com/nodejs/$pkgname/archive/v$pkgver.tar.gz + 0001-makefile-fix-DESTDIR-usage.patch + 0002-makefile-quote-variables.patch + 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch + 0004-makefile-add-CFLAGS-to-linking-command.patch + 0005-makefile-fix-install-rule-dependency.patch + " +builddir="$srcdir/$pkgname-$pkgver" + +build() { + cd "$builddir" + make library +} + +package() { + cd "$builddir" + make install DESTDIR="$pkgdir" PREFIX="/usr" +} + +md5sums="31c6fefb6208b16d19b3f990e71cb04a http-parser-2.7.1.tar.gz +f6d5377fd3b5c91422bb2dcc2c4dce6c 0001-makefile-fix-DESTDIR-usage.patch +859eff808165458c797353f0306ebc65 0002-makefile-quote-variables.patch +8aea7eb27ae19ede7c8aed3d41c86d84 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch +23d1e43dbf2deffb38488d54cce62f96 0004-makefile-add-CFLAGS-to-linking-command.patch +fd7ffe7e725f866232f3b2850d164256 0005-makefile-fix-install-rule-dependency.patch" +sha256sums="70409ad324e5de2da6a0f39e859e566d497c1ff0a249c0c38a5012df91b386b3 http-parser-2.7.1.tar.gz +785012d9e0efb70c4dcc137f354ab57afabdcb0fb7c8cb2580c3c4a7e9add330 0001-makefile-fix-DESTDIR-usage.patch +80fdf673731f27f328d45f4da7daa613613d8db40f1dc84d2ce65fad0130c054 0002-makefile-quote-variables.patch +9854f5f205ec0959cc10cab80d16ff54f33a9979e5fd310ba9a4624b60c84ee9 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch +e69fa304327dbb0626edaf147b73dc9fb4718b656b225794a04937206929c0df 0004-makefile-add-CFLAGS-to-linking-command.patch +04898654adef3f3dbf1e29e66f8e9fc4467f68389e224beb03387d33ee263212 0005-makefile-fix-install-rule-dependency.patch" +sha512sums="c0fe86455db1a563a5c668f118dfa9a27b9a637ee1c0e2f2f18a5b816352436ed90435ea978e3f3d85b037d3c630234e47d609dc3b7086b898286c4e54d9f031 http-parser-2.7.1.tar.gz +ebb481df21cb312824ed65e7d6a3e7b237451071235566595da97c09b165767693ec3c47c27c451bfbdc2d62cc45c7d5d9f996b80789dc7fedaa2543c94c9065 0001-makefile-fix-DESTDIR-usage.patch +3637abedbf330af0f4a9721081db99fe0f6400322f21f77ab16d580546a9d200d40bc584e8dbb51adec249c2d468730c6e2487ccda3786626909d988b7f8856a 0002-makefile-quote-variables.patch +8202d665963234ce6dd84439f281921cb959424024c2fec8a27b65693b3466cab8674a3549d22fdb2fc07edf69f94440368ef77738ae4be2a5d94c13e3c814bb 0003-makefile-fix-SONAME-symlink-it-should-not-be-a-full-.patch +e18c163f2069795fb6b744ad9f6e44eb9efca7f560460a6759bc0121a404bfe8109031c0f43d36d4987bda3411e0a433dbab6d0eabb2dbb5c79f1ce878251aae 0004-makefile-add-CFLAGS-to-linking-command.patch +4cd120f406eeeb1e5a60c7d8955cdfead50d99b60f91a0fcdb2ae19403d08e5ed5619885c9e434ce40ffb442b317ee8c32ef636960429036f9bff92492f03968 0005-makefile-fix-install-rule-dependency.patch" -- cgit v1.2.3