aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix (xq) Queißner <git@mq32.de>2020-06-07 01:42:47 +0200
committerFelix (xq) Queißner <git@mq32.de>2020-06-07 01:42:47 +0200
commit77b28981095d63e8a7b96c28eef2be89ecea240b (patch)
tree9b7107a599ce60a776bc7a4533f15bd0c0968a17
parent093bfcc50d5889358ed806096ac5652a9e925cfc (diff)
downloadkristall-77b28981095d63e8a7b96c28eef2be89ecea240b.tar.gz
Adds build helper.
-rw-r--r--.gitignore3
-rw-r--r--Makefile13
-rw-r--r--README.md24
-rw-r--r--src/kristall.pro3
4 files changed, 40 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index 8afca18..dc5f337 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,9 @@
# This file is used to ignore files which are generated
# ----------------------------------------------------------------------------
+build/
+kristall
+
*~
*.autosave
*.a
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..2cd938c
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,13 @@
+all: build-dir kristall
+
+kristall: build/kristall
+ cp $< $@
+
+build/kristall: build-dir
+ cd build && qmake ../src/kristall.pro && $(MAKE)
+
+build-dir:
+ mkdir -p build
+
+.PHONY: build-dir
+.SUFFIXES:
diff --git a/README.md b/README.md
index 89a1759..3991d11 100644
--- a/README.md
+++ b/README.md
@@ -50,12 +50,16 @@ A high-quality visual cross-platform gemini browser.
### Build
-The usual Qt5 build process:
+## *nix
+
+There's a small `Makefile` provided that does all necessary steps and creates a build directory, then copies the build artifact from the build directory. Just do `make` in the root directory, it should work.
+
+Or you can use the usual Qt5 build process:
```sh
mkdir build
cd build
-qmake ../kristall.pro
+qmake ../src/kristall.pro
make
```
@@ -63,12 +67,20 @@ Notes for OpenBSD:
- It seems like Qt wants `libzstd.so.3.1` instead of `libzstd.so.3.2`. Just symlink that file into the build directory
- Use `make` and not `gmake` to build the project.
+## Windows
+
+Just use QtCreator to build `./src/kristall.pro`. Default settings should be fine.
+
## TODO
- [ ] Survive full torture suite
- [ ] Correctly parse mime parameters
- [ ] Correctly parse charset (0013, 0014)
- [ ] Correctly parse other params (0015)
- [ ] Correctly parse undefined params (0016)
+- [ ] TLS Handling
+ - [ ] Allow user to ignore TLS errors
+ - [ ] Enable TOFU for HTTPS/Gemini
+ - [ ] Enable Client Certificate Management
- [ ] Recognize home directories with /~home and such and add "substyles"
- [ ] Add favicon support
- [ ] Add auto-generated "favicons"
@@ -80,4 +92,10 @@ Notes for OpenBSD:
- [ ] finger://tomasino@cosmic.voyage
- [ ] finger://ping@cosmic.voyage
- [ ] Gopher
- - [ ] gopher://gopher.black \ No newline at end of file
+ - [ ] gopher://gopher.black
+- [ ] Improve UX
+ - [ ] Rightclick with "open in new tab" and "open in this tab"
+ - [ ] For history
+ - [ ] For favourites
+ - [ ] For documents
+ - [ ] Image Zoom and Pan \ No newline at end of file
diff --git a/src/kristall.pro b/src/kristall.pro
index 1d2e190..ed53750 100644
--- a/src/kristall.pro
+++ b/src/kristall.pro
@@ -15,6 +15,9 @@ DEFINES += QT_DEPRECATED_WARNINGS
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
+QMAKE_CFLAGS += -Wno-unused-parameter
+QMAKE_CXXFLAGS += -Wno-unused-parameter
+
SOURCES += \
browsertab.cpp \
documentoutlinemodel.cpp \