forked from vieter-v/vieter
Still trying to just link some stuff bro
parent
cfcca90dfc
commit
05e725eb4e
|
@ -1,7 +1,7 @@
|
|||
*.c
|
||||
data/
|
||||
vieter.exe
|
||||
vieter-prod.exe
|
||||
vieter
|
||||
vieter-prod
|
||||
|
||||
# Ignore testing files
|
||||
*.pkg*
|
||||
|
|
32
Makefile
32
Makefile
|
@ -1,31 +1,37 @@
|
|||
# =====CONFIG=====
|
||||
SRC_DIR := src
|
||||
SOURCES != find '$(SRC_DIR)' -iname '*.v'
|
||||
|
||||
LARCHIVE_VER := 3.5.2
|
||||
LARCHIVE_DIR := libarchive-$(LARCHIVE_VER)
|
||||
LARCHIVE_LIB := $(LARCHIVE_DIR)/.libs/libarchive.a
|
||||
LARCHIVE_LIB := $(LARCHIVE_DIR)/libarchive/libarchive.so
|
||||
|
||||
# Custom V command for linking libarchive
|
||||
V := LDFLAGS=$(PWD)/$(LARCHIVE_LIB) v -cflags -I$(PWD)/$(LARCHIVE_DIR)
|
||||
# V := LDFLAGS=$(PWD)/$(LARCHIVE_LIB) v -cflags '-I$(PWD)/$(LARCHIVE_DIR) -I $(PWD)/$(LARCHIVE_DIR)'
|
||||
V := v
|
||||
|
||||
|
||||
# =====COMPILATION=====
|
||||
.PHONY: vieter
|
||||
vieter:
|
||||
$(V) -cg -o vieter.exe vieter
|
||||
.PHONY: debug
|
||||
debug: vieter
|
||||
vieter: $(SOURCES)
|
||||
$(V) -cg -o vieter $(SRC_DIR)
|
||||
|
||||
.PHONY: prod
|
||||
prod:
|
||||
$(V) -o vieter-prod.exe -prod vieter
|
||||
prod: vieter-prod
|
||||
vieter-prod: $(SOURCES)
|
||||
$(V) -o vieter-prod -prod $(SRC_DIR)
|
||||
|
||||
|
||||
# =====EXECUTION=====
|
||||
# Run the server in the default 'data' directory
|
||||
.PHONY: run
|
||||
run: libarchive
|
||||
API_KEY=test REPO_DIR=data LOG_LEVEL=DEBUG $(V) run vieter
|
||||
run: vieter
|
||||
API_KEY=test REPO_DIR=data LOG_LEVEL=DEBUG ./vieter
|
||||
|
||||
# Same as run, but restart when the source code changes
|
||||
.PHONY: watch
|
||||
watch: libarchive
|
||||
watch:
|
||||
API_KEY=test REPO_DIR=data LOG_LEVEL=DEBUG $(V) watch run vieter
|
||||
|
||||
|
||||
|
@ -33,7 +39,7 @@ watch: libarchive
|
|||
# Format the V codebase
|
||||
.PHONY: fmt
|
||||
fmt:
|
||||
v fmt -w vieter
|
||||
v fmt -w $(SRC_DIR)
|
||||
|
||||
# Pulls & builds my personal build of the v compiler, required for this project to function
|
||||
.PHONY: customv
|
||||
|
@ -51,8 +57,8 @@ customv:
|
|||
libarchive: $(LARCHIVE_LIB)
|
||||
$(LARCHIVE_LIB):
|
||||
curl -o - "https://libarchive.org/downloads/libarchive-${LARCHIVE_VER}.tar.gz" | tar xzf -
|
||||
cd "libarchive-${LARCHIVE_VER}" && ./configure --disable-bsdtar --disable-bsdcpio
|
||||
cd "libarchive-${LARCHIVE_VER}" && cmake .
|
||||
'$(MAKE)' -C "libarchive-${LARCHIVE_VER}"
|
||||
|
||||
clean:
|
||||
rm -rf '$(LARCHIVE_DIR)' 'data'
|
||||
rm -rf '$(LARCHIVE_DIR)' 'data' 'vieter' 'vieter-prod'
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
module archive
|
||||
|
||||
#flag -larchive
|
||||
#include "archive.h"
|
||||
#include "archive_entry.h"
|
||||
|
||||
struct C.archive {}
|
||||
|
||||
struct C.archive_entry {}
|
||||
|
||||
fn C.archive_read_new() &C.archive
|
||||
fn C.archive_read_support_filter_all(&C.archive)
|
||||
fn C.archive_read_support_format_all(&C.archive)
|
||||
|
||||
pub fn list_filenames() {
|
||||
a := C.archive_read_new()
|
||||
C.archive_read_support_filter_all(a)
|
||||
C.archive_read_support_format_all(a)
|
||||
println(a)
|
||||
}
|
|
@ -5,6 +5,7 @@ import os
|
|||
import log
|
||||
import io
|
||||
import repo
|
||||
import archive
|
||||
|
||||
const port = 8000
|
||||
|
||||
|
@ -94,6 +95,7 @@ fn main() {
|
|||
logger.info("Created package directory '$repo.pkg_dir()'.")
|
||||
}
|
||||
|
||||
archive.list_filenames()
|
||||
web.run(&App{
|
||||
logger: logger
|
||||
api_key: key
|
|
@ -1,13 +0,0 @@
|
|||
module archive
|
||||
|
||||
#include "libarchive/archive.h"
|
||||
#include "libarchive/archive_entry.h"
|
||||
|
||||
struct C.archive {}
|
||||
struct C.archive_entry {}
|
||||
|
||||
fn C.archive_read_new() &C.archive
|
||||
|
||||
pub fn list_filenames() {
|
||||
a := C.archive_read_new()
|
||||
}
|
Loading…
Reference in New Issue