:: commit 98c98c3701a0404c514cb68ccc8b35f56e64c1db

Kamila Szewczyk <kspalaiologos@gmail.com> — 2022-05-02 07:24

parents: e24aafcee5

reorganise a few files

diff --git a/.gitignore b/.gitignore
index f3cc035..7688b9f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,5 @@ bzip3
 libsais.o
 
 main.o
+
+*.o
diff --git a/Makefile b/Makefile
index 492eb8a..ee5a197 100644
--- a/Makefile
+++ b/Makefile
@@ -1,16 +1,18 @@
 
 CC=clang
-CFLAGS=-O3 -march=native -mtune=native -flto
+CFLAGS=-O3 -march=native -mtune=native -flto -Iinclude
 
 .PHONY: all clean
 
+OBJECTS=obj/main.o obj/libsais.o obj/crc32.o obj/mtf.o
+
 all: bzip3
 
-%.o: %.c srt.h rle.h crc32.h cm.h mtf.h
+obj/%.o: src/%.c
 	$(CC) $(CFLAGS) -c $< -o $@
 
-bzip3: main.o libsais.o
+bzip3: $(OBJECTS)
 	$(CC) $(CFLAGS) -o $@ $^
 
 clean:
-	rm bzip3 *.o
+	rm -f bzip3 obj/*.o
diff --git a/cm.h b/include/cm.h
similarity index 100%
rename from cm.h
rename to include/cm.h
diff --git a/include/crc32.h b/include/crc32.h
new file mode 100644
index 0000000..b474df2
--- /dev/null
+++ b/include/crc32.h
@@ -0,0 +1,10 @@
+
+#ifndef _CRC32_H
+#define _CRC32_H
+
+#include <inttypes.h>
+#include <stddef.h>
+
+uint32_t crc32sum(uint32_t crc, uint8_t *buf, size_t size);
+
+#endif
diff --git a/libsais.h b/include/libsais.h
similarity index 100%
rename from libsais.h
rename to include/libsais.h
diff --git a/include/mtf.h b/include/mtf.h
new file mode 100644
index 0000000..5e85938
--- /dev/null
+++ b/include/mtf.h
@@ -0,0 +1,15 @@
+
+#ifndef _MTF_H
+#define _MTF_H
+
+#include <inttypes.h>
+#include <stddef.h>
+
+struct mtf_state {
+    uint32_t prev[256], curr[256], symbols[256], ranks[256];
+};
+
+void mtf_encode(struct mtf_state * mtf, uint8_t *src, uint8_t *dst, uint32_t count);
+void mtf_decode(struct mtf_state * mtf, uint8_t *src, uint8_t *dst, uint32_t count);
+
+#endif
diff --git a/rle.h b/include/rle.h
similarity index 100%
rename from rle.h
rename to include/rle.h
diff --git a/srt.h b/include/srt.h
similarity index 100%
rename from srt.h
rename to include/srt.h
diff --git a/obj/.gitkeep b/obj/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/crc32.h b/src/crc32.c
similarity index 97%
rename from crc32.h
rename to src/crc32.c
index a98308a..9f398da 100644
--- a/crc32.h
+++ b/src/crc32.c
@@ -1,6 +1,5 @@
 
-#ifndef _CRC32_H
-#define _CRC32_H
+#include "crc32.h"
 
 static const uint32_t crc32Table[256] = {
     0x00000000L, 0xF26B8303L, 0xE13B70F7L, 0x1350F3F4L, 0xC79A971FL,
@@ -57,9 +56,7 @@ static const uint32_t crc32Table[256] = {
     0xAD7D5351L
 };
 
-static uint32_t crc32sum(uint32_t crc, uint8_t *buf, size_t size) {
+uint32_t crc32sum(uint32_t crc, uint8_t *buf, size_t size) {
     while (size--) crc = crc32Table[(crc ^ *(buf++)) & 0xff] ^ (crc >> 8);
     return crc;
 }
-
-#endif
diff --git a/libsais.c b/src/libsais.c
similarity index 100%
rename from libsais.c
rename to src/libsais.c
diff --git a/main.c b/src/main.c
similarity index 100%
rename from main.c
rename to src/main.c
diff --git a/mtf.h b/src/mtf.c
similarity index 90%
rename from mtf.h
rename to src/mtf.c
index eddcf6a..6adc099 100644
--- a/mtf.h
+++ b/src/mtf.c
@@ -1,10 +1,5 @@
 
-#ifndef _MTF_H
-#define _MTF_H
-
-struct mtf_state {
-    uint32_t prev[256], curr[256], symbols[256], ranks[256];
-};
+#include "mtf.h"
 
 void mtf_encode(struct mtf_state * mtf, uint8_t *src, uint8_t *dst, uint32_t count) {
     for (uint32_t i = 0; i < 256; i++) {
@@ -48,5 +43,3 @@ void mtf_decode(struct mtf_state * mtf, uint8_t *src, uint8_t *dst, uint32_t cou
         mtf->ranks[r] = c;
     }
 }
-
-#endif
tab: 248 wrap: offon