# PUBLIC DOMAIN - NO WARRANTY, see: # # # Written in 2021 by Alfonso Sabato Siciliano LIBRARY = bsddialog LIBRARY_SO = lib${LIBRARY:=.so} LIBRARY_A = lib${LIBRARY:=.a} HEADERS = bsddialog.h bsddialog_theme.h bsddialog_progressview.h SOURCES = barbox.c datebox.c formbox.c libbsddialog.c lib_util.c \ menubox.c messagebox.c slider.c textbox.c theme.c timebox.c OBJECTS = ${SOURCES:.c=.o} PREFIX = /usr/local .if defined(DEBUG) CFLAGS += -g .endif CFLAGS += -D_XOPEN_SOURCE_EXTENDED -fPIC -Wall -Wextra -std=gnu99 \ -fstack-protector-strong LDFLAGS += -fstack-protector-strong -shared -Wl,-x -Wl,--fatal-warnings \ -Wl,--warn-shared-textrel -Wl,-soname,${LIBRARY_SO}.${VERSION} \ -L/usr/lib -lncursesw -ltinfow LN = ln -s -f RM = rm -f all: ${LIBRARY} install: all ${INSTALL} -m 0644 bsddialog.h ${DESTDIR}${PREFIX}/include/bsddialog.h ${INSTALL} -m 0644 bsddialog_progressview.h ${DESTDIR}${PREFIX}/include/bsddialog_progressview.h ${INSTALL} -m 0644 bsddialog_theme.h ${DESTDIR}${PREFIX}/include/bsddialog_theme.h ${INSTALL} -m 0644 ${LIBRARY_A} ${DESTDIR}${PREFIX}/lib/${LIBRARY_A} ${INSTALL} -m 0755 ${LIBRARY_SO}.${VERSION} ${DESTDIR}${PREFIX}/lib/${LIBRARY_SO}.${VERSION} ${LN} ${LIBRARY_SO}.${VERSION} ${DESTDIR}${PREFIX}/lib/${LIBRARY_SO} uninstall: ${RM} ${DESTDIR}${PREFIX}/include/bsddialog.h ${RM} ${DESTDIR}${PREFIX}/include/bsddialog_progressview.h ${RM} ${DESTDIR}${PREFIX}/include/bsddialog_theme.h ${RM} ${DESTDIR}${PREFIX}/lib/${LIBRARY_A} ${RM} ${DESTDIR}${PREFIX}/lib/${LIBRARY_SO}.${VERSION} ${RM} ${DESTDIR}${PREFIX}/lib/${LIBRARY_SO} ${LIBRARY}: ${LIBRARY_SO} ${LIBRARY_A} ${LIBRARY_SO}.${VERSION}: ${OBJECTS} ${CC} ${LDFLAGS} ${.ALLSRC} -o ${LIBRARY_SO}.${VERSION} ${LIBRARY_SO}: ${LIBRARY_SO}.${VERSION} ${LN} ${LIBRARY_SO}.${VERSION} ${LIBRARY_SO} ${LIBRARY_A}: ${OBJECTS} ${AR} cr ${.TARGET} ${OBJECTS} ${RANLIB} ${.TARGET} .c.o: ${CC} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} clean: ${RM} ${LIBRARY_SO}* *.o *~ *.gz ${LIBRARY_A} .PHONY: all install uninstall ${LIBRARY} clean