From a3613c3d1babbb7335896810c4f2a97fe8fa22f5 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Fri, 22 Mar 2019 20:56:29 +0100 Subject: [PATCH] unrar: bump version. --- app-arch/unrar/patches/unrar-5.5.8.patchset | 80 -------------- app-arch/unrar/patches/unrar-5.7.3.patchset | 21 ++++ app-arch/unrar/unrar-5.5.8.recipe | 67 ------------ app-arch/unrar/unrar-5.7.3.recipe | 112 ++++++++++++++++++++ 4 files changed, 133 insertions(+), 147 deletions(-) delete mode 100644 app-arch/unrar/patches/unrar-5.5.8.patchset create mode 100644 app-arch/unrar/patches/unrar-5.7.3.patchset delete mode 100644 app-arch/unrar/unrar-5.5.8.recipe create mode 100644 app-arch/unrar/unrar-5.7.3.recipe diff --git a/app-arch/unrar/patches/unrar-5.5.8.patchset b/app-arch/unrar/patches/unrar-5.5.8.patchset deleted file mode 100644 index eb8ca9bcb..000000000 --- a/app-arch/unrar/patches/unrar-5.5.8.patchset +++ /dev/null @@ -1,80 +0,0 @@ -From 1c19dea55d375f6968ce54a51ab42958347726a8 Mon Sep 17 00:00:00 2001 -From: Jerome Duval -Date: Mon, 12 May 2014 18:07:44 +0000 -Subject: initial Haiku patch - - -diff --git a/archive.hpp b/archive.hpp -index 6e85b9f..a85afc5 100644 ---- a/archive.hpp -+++ b/archive.hpp -@@ -65,7 +65,6 @@ class Archive:public File - size_t SearchSubBlock(const wchar *Type); - size_t SearchRR(); - void WriteBlock(HEADER_TYPE HeaderType,BaseBlock *wb=NULL,bool OnlySetSize=false,bool NonFinalWrite=false); -- void SetBlockSize(HEADER_TYPE HeaderType,BaseBlock *wb=NULL) {WriteBlock(HeaderType,wb,true);} - size_t ReadHeader(); - void CheckArc(bool EnableBroken); - void CheckOpen(const wchar *Name); -diff --git a/makefile b/makefile -index 259b907..ccf1a54 100644 ---- a/makefile -+++ b/makefile -@@ -5,11 +5,15 @@ - CXX=c++ - CXXFLAGS=-O2 - LIBFLAGS=-fPIC --DEFINES=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DRAR_SMP -+DEFINES=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DRAR_SMP -D_BSD_SOURCE - STRIP=strip - AR=ar --LDFLAGS=-pthread -+LDFLAGS=-lbsd - DESTDIR=/usr -+RC=rc -+XRES=xres -+MIMESET=mimeset -+DESTDIR=(shell finddir B_SYSTEM_DIRECTORY) - - # Linux using LCC - #CXX=lcc -@@ -128,12 +132,14 @@ install: install-unrar - uninstall: uninstall-unrar - - clean: -- @rm -f *.o *.bak *~ -+ @rm -f *.o *.bak *~ *.rsrc - - unrar: clean $(OBJECTS) $(UNRAR_OBJ) - @rm -f unrar - $(LINK) -o unrar $(LDFLAGS) $(OBJECTS) $(UNRAR_OBJ) $(LIBS) -- $(STRIP) unrar -+ $(RC) -o unrar.rsrc unrar.rdef -+ $(XRES) -o unrar unrar.rsrc -+ $(MIMESET) unrar - - sfx: WHAT=SFX_MODULE - sfx: clean $(OBJECTS) -diff --git a/os.hpp b/os.hpp -index 795dd96..ce70f69 100644 ---- a/os.hpp -+++ b/os.hpp -@@ -190,6 +190,15 @@ - #endif - #endif - -+#ifdef __HAIKU__ -+ #include -+ #if LITTLE_ENDIAN -+ #undef BIG_ENDIAN -+ #elif BIG_ENDIAN -+ #undef LITTLE_ENDIAN -+ #endif -+#endif -+ - #if defined(__sparc) || defined(sparc) || defined(__hpux) - #ifndef BIG_ENDIAN - #define BIG_ENDIAN --- -2.12.2 - diff --git a/app-arch/unrar/patches/unrar-5.7.3.patchset b/app-arch/unrar/patches/unrar-5.7.3.patchset new file mode 100644 index 000000000..647163d4e --- /dev/null +++ b/app-arch/unrar/patches/unrar-5.7.3.patchset @@ -0,0 +1,21 @@ +From 1c19dea55d375f6968ce54a51ab42958347726a8 Mon Sep 17 00:00:00 2001 +From: Jerome Duval +Date: Mon, 12 May 2014 18:07:44 +0000 +Subject: initial Haiku patch + + +diff --git a/archive.hpp b/archive.hpp +index fd33ac3..787977b 100644 +--- a/archive.hpp ++++ b/archive.hpp +@@ -67,7 +67,6 @@ class Archive:public File + size_t SearchSubBlock(const wchar *Type); + size_t SearchRR(); + void WriteBlock(HEADER_TYPE HeaderType,BaseBlock *wb=NULL,bool OnlySetSize=false,bool NonFinalWrite=false); +- void SetBlockSize(HEADER_TYPE HeaderType,BaseBlock *wb=NULL) {WriteBlock(HeaderType,wb,true);} + size_t ReadHeader(); + void CheckArc(bool EnableBroken); + void CheckOpen(const wchar *Name); +-- +2.16.2 + diff --git a/app-arch/unrar/unrar-5.5.8.recipe b/app-arch/unrar/unrar-5.5.8.recipe deleted file mode 100644 index dc05796df..000000000 --- a/app-arch/unrar/unrar-5.5.8.recipe +++ /dev/null @@ -1,67 +0,0 @@ -SUMMARY="Uncompress rar files" -DESCRIPTION="UnRAR decompresses rar files. It is a powerful archive manager \ -that can backup your data and reduce the size of email attachments. UnRAR can \ -decompress the following file formats: -- RAR -- ZIP -- CAB -- ARJ -- JZH -- TAR -- GZ and TAR.GZ -- BZ2 and TAR.BZ2 -- ACE -- UUE -- JAR (Java Archive) -- ISO -- 7Z -- XZ -- Z (Unix Compress)" -HOMEPAGE="https://www.rarlab.com/rar_add.htm" -COPYRIGHT="1993-2016 Alexander Roshal" -LICENSE="UnRAR" -REVISION="2" -SOURCE_URI="http://www.rarlab.com/rar/unrarsrc-$portVersion.tar.gz" -CHECKSUM_SHA256="9b66e4353a9944bc140eb2a919ff99482dd548f858f5e296d809e8f7cdb2fcf4" -SOURCE_DIR="unrar" -PATCHES="unrar-$portVersion.patchset" -ADDITIONAL_FILES="unrar.rdef" - -ARCHITECTURES="x86_gcc2 x86 x86_64" - -PROVIDES=" - unrar = $portVersion - cmd:unrar = $portVersion - " -REQUIRES=" - haiku - " - -BUILD_REQUIRES=" - haiku_devel - " -BUILD_PREREQUIRES=" - cmd:cut - cmd:g++ - cmd:make - cmd:sed - " - -BUILD() -{ - local MAJOR="`echo "$portVersion" | cut -d. -f1`" - local MIDDLE="`echo "$portVersion" | cut -d. -f2`" - local MINOR="`echo "$portVersion" | cut -d. -f3`" - sed \ - -e "s|@MAJOR@|$MAJOR|" \ - -e "s|@MIDDLE@|$MIDDLE|" \ - -e "s|@MINOR@|$MINOR|" \ - $portDir/additional-files/unrar.rdef > unrar.rdef - - make DESTDIR=$prefix -} - -INSTALL() -{ - make DESTDIR=$prefix install -} diff --git a/app-arch/unrar/unrar-5.7.3.recipe b/app-arch/unrar/unrar-5.7.3.recipe new file mode 100644 index 000000000..e04801c5b --- /dev/null +++ b/app-arch/unrar/unrar-5.7.3.recipe @@ -0,0 +1,112 @@ +SUMMARY="Uncompress rar files" +DESCRIPTION="UnRAR decompresses rar files. It is a powerful archive manager \ +that can backup your data and reduce the size of email attachments. UnRAR can \ +decompress the following file formats: +- RAR +- ZIP +- CAB +- ARJ +- JZH +- TAR +- GZ and TAR.GZ +- BZ2 and TAR.BZ2 +- ACE +- UUE +- JAR (Java Archive) +- ISO +- 7Z +- XZ +- Z (Unix Compress)" +HOMEPAGE="https://www.rarlab.com/rar_add.htm" +COPYRIGHT="1993-2018 Alexander Roshal" +LICENSE="UnRAR" +REVISION="1" +SOURCE_URI="https://www.rarlab.com/rar/unrarsrc-$portVersion.tar.gz" +CHECKSUM_SHA256="40e856b78374f258d8a1f5f02c02f828c5392a0118c9300fd169a300b520a444" +SOURCE_DIR="unrar" +PATCHES="unrar-$portVersion.patchset" +ADDITIONAL_FILES=" + test.rar + unrar.rdef + " + +ARCHITECTURES="x86_gcc2 x86 x86_64" + +PROVIDES=" + unrar = $portVersion + cmd:unrar = $portVersion + devel:libunrar = $portVersion + lib:libunrar = $portVersion + " +REQUIRES=" + haiku + " + +BUILD_REQUIRES=" + haiku_devel + " +BUILD_PREREQUIRES=" + cmd:cut + cmd:g++ + cmd:make + cmd:sed + " + +PATCH() +{ + if [ "$effectiveTargetArchitecture" = x86_gcc2 ]; then + sed -i \ + -e "/^CXXFLAGS=/ s/ -Wno-logical-op-parentheses//;" \ + -e "/^CXXFLAGS=/ s/ -Wno-dangling-else//;" \ + makefile + fi + sed -i -e "/^LDFLAGS=/ d;" makefile +} + +BUILD() +{ + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local MINOR="`echo "$portVersion" | cut -d. -f3`" + sed \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + "$portDir"/additional-files/unrar.rdef > unrar.rdef + + for i in unrar lib sfx; do + mkdir -p $i + cd $i + ln -f -s ../*.cpp ../*.hpp ../makefile . + CPPFLAGS="-D_BSD_SOURCE" LDFLAGS="-lbsd" make $i + cd .. + done +} + +INSTALL() +{ + install -d "$libDir"/unrar + install -t "$libDir"/unrar sfx/default.sfx + for i in unrar lib; do + make -C $i DESTDIR="$prefix" install-$i + done + rm "$libDir"/libunrar.a + + prepareInstalledDevelLib libunrar + + addResourcesToBinaries unrar.rdef "$binDir"/unrar + mimeset -f "$binDir"/unrar +} + +TEST() +{ + rm -rf dir + "$sourceDir"/unrar/unrar x "$portDir"/additional-files/test.rar + test "`cat dir/haiku.txt`" = Haiku + + cat sfx/default.sfx "$portDir"/additional-files/test.rar >dir/sfxtest + cd dir + chmod +x sfxtest + ./sfxtest + test "`cat dir/haiku.txt`" = Haiku +}