52 lines
1.6 KiB
Makefile
52 lines
1.6 KiB
Makefile
ifndef VERBOSE
|
|
.SILENT:
|
|
endif
|
|
|
|
# main build target. compiles the teamserver and client
|
|
all: ts-build client-build
|
|
|
|
# teamserver building target
|
|
ts-build:
|
|
@ echo "[*] building teamserver"
|
|
@ ./teamserver/Install.sh
|
|
@ cd teamserver; GO111MODULE="on" go build -ldflags="-s -w -X cmd.VersionCommit=$(git rev-parse HEAD)" -o ../havoc main.go
|
|
@ sudo setcap 'cap_net_bind_service=+ep' havoc # this allows you to run the server as a regular user
|
|
|
|
dev-ts-compile:
|
|
@ echo "[*] compile teamserver"
|
|
@ cd teamserver; GO111MODULE="on" go build -ldflags="-s -w -X cmd.VersionCommit=$(git rev-parse HEAD)" -o ../havoc main.go
|
|
|
|
ts-cleanup:
|
|
@ echo "[*] teamserver cleanup"
|
|
@ rm -rf ./teamserver/bin
|
|
@ rm -rf ./data/loot
|
|
@ rm -rf ./data/x86_64-w64-mingw32-cross
|
|
@ rm -rf ./data/havoc.db
|
|
@ rm -rf ./data/server.*
|
|
@ rm -rf ./teamserver/.idea
|
|
@ rm -rf ./havoc
|
|
|
|
# client building and cleanup targets
|
|
client-build:
|
|
@ echo "[*] building client"
|
|
@ git submodule update --init --recursive
|
|
@ mkdir client/Build; cd client/Build; cmake ..
|
|
@ if [ -d "client/Modules" ]; then echo "Modules installed"; else git clone https://github.com/HavocFramework/Modules client/Modules --single-branch --branch `git rev-parse --abbrev-ref HEAD`; fi
|
|
@ cmake --build client/Build -- -j 4
|
|
|
|
client-cleanup:
|
|
@ echo "[*] client cleanup"
|
|
@ rm -rf ./client/Build
|
|
@ rm -rf ./client/Bin/*
|
|
@ rm -rf ./client/Data/database.db
|
|
@ rm -rf ./client/.idea
|
|
@ rm -rf ./client/cmake-build-debug
|
|
@ rm -rf ./client/Havoc
|
|
@ rm -rf ./client/Modules
|
|
|
|
|
|
# cleanup target
|
|
clean: ts-cleanup client-cleanup
|
|
@ rm -rf ./data/*.db
|
|
@ rm -rf payloads/Demon/.idea
|