49 lines
1.4 KiB
Makefile
49 lines
1.4 KiB
Makefile
CC = gcc
|
|
CFLAGS = -Wall -std=c17
|
|
OUT = pwdgen
|
|
SRC = src/*.c
|
|
BUILDDIR=build
|
|
DESTDIR = /usr/local/bin
|
|
|
|
DEBVERSION = 1.0
|
|
ARCH = amd64
|
|
DEBPACKAGENAME = pwdgen-$(DEBVERSION)-1_$(ARCH)
|
|
|
|
build:
|
|
@if [ ! -d ${BUILDDIR} ]; then \
|
|
mkdir -pv ${BUILDDIR}; \
|
|
fi
|
|
@$(CC) $(CFLAGS) $(SRC) -o ${BUILDDIR}/$(OUT)
|
|
|
|
all:
|
|
@make clean
|
|
@make build
|
|
@make run
|
|
|
|
run:
|
|
@./${BUILDDIR}/$(OUT)
|
|
|
|
clean:
|
|
@if [ -d ${BUILDDIR} ]; then \
|
|
rm -rv ${BUILDDIR}; \
|
|
fi
|
|
|
|
install:
|
|
@if [ ! -d ${DESTDIR} ]; then \
|
|
mkdir -pv ${DESTDIR}; \
|
|
fi
|
|
@cp -rf ${BUILDDIR}/$(OUT) $(DESTDIR)
|
|
|
|
debpkg:
|
|
@printf "$(GREEN)[ $(YELLOW)15%% $(GREEN)] $(RESET)CREATE PACKAGE DIRECTORIES\n"
|
|
@rm -rf $(DEBPACKAGENAME)
|
|
@mkdir -p $(DEBPACKAGENAME)/usr/local/bin
|
|
@printf "$(GREEN)[ $(YELLOW)45%% $(GREEN)] $(RESET)COPY PACKAGE FILES\n"
|
|
@cp -rf $(BUILDDIR)/pwdgen $(DEBPACKAGENAME)/usr/local/bin/pwdgen
|
|
@printf "$(GREEN)[ $(YELLOW)75%% $(GREEN)] $(RESET)CREATE PACKAGE METADATA\n"
|
|
@mkdir $(DEBPACKAGENAME)/DEBIAN
|
|
@touch $(DEBPACKAGENAME)/DEBIAN/control
|
|
@printf "$(GREEN)[ $(YELLOW)100%% $(GREEN)] $(RESET)CREATE PACKAGE\n"
|
|
@printf "Package: pwdgen\nVersion: $(DEBVERSION)\nArchitecture: $(ARCH)\nMaintainer: Tola Mironcenko <mironcenkotola@gmail.com>\nDescription: Password generator\n" >> $(DEBPACKAGENAME)/DEBIAN/control
|
|
@dpkg-deb --build --root-owner-group $(DEBPACKAGENAME)
|
|
@printf "$(GREEN)BUILDING DEBIAN PACKAGE SUCCESS$(RESET)\n"
|