From a24228db5eb4450d185904b3a3795bffa28ce5f7 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Mon, 14 Apr 2014 16:24:18 +0000
Subject: initial haiku patch


diff --git a/archive.hpp b/archive.hpp
index 95645ed..377b779 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 dfb3efb..bc6419a 100644
--- a/makefile
+++ b/makefile
@@ -7,8 +7,12 @@ CXXFLAGS=-O2
 LIBFLAGS=-fPIC
 DEFINES=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DRAR_SMP
 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 ed76a19..41594be 100644
--- a/os.hpp
+++ b/os.hpp
@@ -187,6 +187,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..79411da
--- /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 = 0,
+	minor = 4,
+	variety = 0,
+	internal = 0,
+	short_info = "5.0.4", 
+	long_info = "5.0.4 Alexander Roshal"
+};
-- 
1.8.3.4

