Hush Full Node software. We were censored from Github, this is where all development happens now.
https://hush.is
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
99 lines
2.0 KiB
99 lines
2.0 KiB
# define the name of application
|
|
APPNAME := lxrhash
|
|
|
|
# define the cpp compiler to use
|
|
CXX := g++
|
|
|
|
# define the FLAGS
|
|
FLAGS := -Wall
|
|
|
|
# define bin directory
|
|
BIN := bin
|
|
|
|
# define include directory
|
|
INC := include
|
|
|
|
# define lib directory
|
|
LIB := lib
|
|
|
|
# define source directory
|
|
SRC := src
|
|
|
|
# define object directory
|
|
OBJ := obj
|
|
|
|
VPATH := $(SRC) $(INC) $(LIB)
|
|
|
|
# Generate extension depending on the operating system
|
|
ifeq ($(OS),Windows_NT)
|
|
TARGET := $(BIN)/$(APPNAME).exe
|
|
else
|
|
TARGET := $(BIN)/$(APPNAME)
|
|
endif
|
|
|
|
# define the color of the console text
|
|
ifeq ($(OS),Windows_NT)
|
|
RED := $(tput setaf "1")
|
|
GREEN := $(tput setaf "2")
|
|
YELLOW := $(tput setaf "3")
|
|
BLUE := $(tput setaf "4")
|
|
PURPLE := $(tput setaf "5")
|
|
CYAN := $(tput setaf "6")
|
|
WHITE := $(tput setaf "7")
|
|
RESET := $(tput sgr0)
|
|
else
|
|
RED := $(shell echo -e "\033[031m")
|
|
GREEN := $(shell echo -e "\033[032m")
|
|
YELLOW := $(shell echo -e "\033[033m")
|
|
BLUE := $(shell echo -e "\033[034m")
|
|
PURPLE := $(shell echo -e "\033[035m")
|
|
CYAN := $(shell echo -e "\033[036m")
|
|
WHITE := $(shell echo -e "\033[037m")
|
|
RESET := $(shell echo -e "\033[0m")
|
|
endif
|
|
|
|
OBJS := $(patsubst %.cpp, $(OBJ)/%.o, $(notdir $(wildcard $(SRC)/*.cpp) $(wildcard $(LIB)/*.cpp)))
|
|
|
|
# Generate object files
|
|
$(OBJ)/%.o: %.cpp
|
|
ifeq ($(OS),Windows_NT)
|
|
@IF NOT EXIST $(subst /,\,$(OBJ)) mkdir $(subst /,\,$(OBJ))
|
|
else
|
|
@mkdir -p $(OBJ)
|
|
endif
|
|
@echo $(CYAN)Compiling: $(RED)$(@F)$(RESET)
|
|
@$(CXX) -I $(INC) -c $< -o $@
|
|
|
|
# Generate executable
|
|
$(TARGET): $(OBJS)
|
|
ifeq ($(OS),Windows_NT)
|
|
@IF NOT EXIST $(subst /,\,$(BIN)) mkdir $(subst /,\,$(BIN))
|
|
else
|
|
@mkdir -p $(BIN)
|
|
endif
|
|
@echo $(CYAN)Creating executable: $(GREEN)$(@F)$(RESET)
|
|
@$(CXX) $(OBJS) -o $@ $(FLAGS)
|
|
|
|
.PHONY: run
|
|
run:
|
|
@$(TARGET)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
ifeq ($(OS),Windows_NT)
|
|
@if exist $(OBJ)\*.o @del /Q $(OBJ)\*.o
|
|
@if exist $(OBJ)\*.exe @del /Q $(BIN)\*.exe
|
|
else
|
|
@rm -f $(OBJ)/*.o
|
|
@rm -f $(BIN)/*
|
|
endif
|
|
|
|
.PHONY: delete
|
|
delete:
|
|
ifeq ($(OS),Windows_NT)
|
|
@if exist $(OBJ) @rd /Q /S $(OBJ)
|
|
@if exist $(BIN) @rd /Q /S $(BIN)
|
|
else
|
|
@rm -rf $(OBJ)
|
|
@rm -rf $(BIN)
|
|
endif
|