unrar: add recipe for version 5.3.2

This commit is contained in:
Jerome Duval
2015-08-16 22:15:38 +00:00
parent e5553e64c7
commit 7153ab536a
2 changed files with 154 additions and 0 deletions

View File

@@ -0,0 +1,98 @@
From 91f19f44e53a574f376db03e81b91ced3a41fce9 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Mon, 12 May 2014 18:07:44 +0000
Subject: initial Haiku patch
diff --git a/archive.hpp b/archive.hpp
index 6d15156..a55bff9 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);
diff --git a/makefile b/makefile
index 3c38027..8b868c4 100644
--- a/makefile
+++ b/makefile
@@ -5,10 +5,14 @@
CXX=g++
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
-LDFLAGS=-pthread
+LDFLAGS=-lbsd
DESTDIR=/usr
+RC=rc
+XRES=xres
+MIMESET=mimeset
+DESTDIR=(shell finddir B_SYSTEM_DIRECTORY)
# Linux using LCC
#CXX=lcc
@@ -116,12 +120,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 1b0813f..a07a741 100644
--- a/os.hpp
+++ b/os.hpp
@@ -196,6 +196,15 @@
#endif
#endif
+#ifdef __HAIKU__
+ #include <endian.h>
+ #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
diff --git a/unrar.rdef b/unrar.rdef
new file mode 100644
index 0000000..167f9ad
--- /dev/null
+++ b/unrar.rdef
@@ -0,0 +1,13 @@
+
+resource app_signature "application/x-vnd.Roshal-UnRAR";
+resource app_flags B_MULTIPLE_LAUNCH | B_BACKGROUND_APP;
+
+resource app_version {
+ major = 5,
+ middle = 3,
+ minor = 2,
+ variety = 0,
+ internal = 0,
+ short_info = "5.3.2",
+ long_info = "5.3.2 Alexander Roshal"
+};
--
1.8.3.4

View File

@@ -0,0 +1,56 @@
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="http://www.rarlab.com/"
SOURCE_URI="http://www.rarlab.com/rar/unrarsrc-$portVersion.tar.gz"
CHECKSUM_SHA256="2d8712eed32367b1a404633f230f94f545c1f2ce0552f851266b00c261a786ea"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PATCHES="unrar-$portVersion.patchset"
PROVIDES="
unrar = $portVersion
cmd:unrar = $portVersion
"
REQUIRES="
haiku
"
BUILD_REQUIRES="
haiku_devel
cmd:make
cmd:g++
"
SOURCE_DIR="unrar"
BUILD()
{
make DESTDIR=$prefix
}
INSTALL()
{
make DESTDIR=$prefix install
}
LICENSE="UnRAR"
COPYRIGHT="Alexander Roshal"