From nobody Sun Mar 13 01:40:20 2022 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 0624A1A19A7D; Sun, 13 Mar 2022 01:40:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4KGMn06ff1z4nZT; Sun, 13 Mar 2022 01:40:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1647135620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DEUabfTJgWZEzh8J66hc3QgMEkLJyZMLvnb6CwK/KgI=; b=kREDFV1A7VH+/ZU39QBOOFyMWt8le9KXgzH3ClslhR9dW4ghCAw8G7ZPuGMIhvhGfwKUUp +dUxX2vzJKjrkFq2fOB7xdSTkjTmUNAkTkoz4MAmzGAerNaaWGTdNzTO1ocz1UOkTfhhiJ lx9jq1f6u3xB3a7VhRZbBpseNlPaUxQJ24V1Y12mGieTw8ZswFMCGRpZlerKQs0BZ3+KDT vVN95zAMltbXxjMlrkEIptRtH3jfBraZ6AnuhvSOMSFGUx6FjSVq1kZat681kIyP2xFEnJ 1bgnAu4r7XzxJvxBKVKmdFg2i9XiefWKZlJDCwAqYhpVLB36TwzFhIGGZmLSCQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C558310373; Sun, 13 Mar 2022 01:40:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 22D1eKnp062311; Sun, 13 Mar 2022 01:40:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 22D1eKl1062261; Sun, 13 Mar 2022 01:40:20 GMT (envelope-from git) Date: Sun, 13 Mar 2022 01:40:20 GMT Message-Id: <202203130140.22D1eKl1062261@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alfonso S. Siciliano" Subject: git: bce40c0242b1 - main - Merge commit '2f8d4418415511460bd7b3b3e532f6b328cf993f' List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: asiciliano X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bce40c0242b167a541cc051b6b0dbcc5f3d04319 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1647135620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DEUabfTJgWZEzh8J66hc3QgMEkLJyZMLvnb6CwK/KgI=; b=humCz9Kg+51T1U1ZYYkadP5BdWLv31ZhiglE4FwE9WSt3El8Y4fEX355aLnkEjtZ5O3hZb MLx8MMX2JEXLDgHgnOIpjBxO5r87IRrxw4QpQBOURQ6fK6JUzeME9BKvt9zznBxcS3VrQA O0reHGaDfj0/opBlSSXYO4GlrJ0eQNmneR/1zX8JqLRozRbFsblRyhfu7JuwfS1sOvMneY nSQBxNrWAr4MIEN9X/25FcHnzIrfSPHFBDazgBLZk2ubv1EIvFddNW3+a4QTurlPaqmr0j 25BZqUrvE+g2fmSvJipfrqrTuj9d1IHitmEdXtrBegQrYcSCjXTdmfDGmAOWdg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1647135620; a=rsa-sha256; cv=none; b=Qau1MffcznFXzW0nc65i+866Zq9jJWIadGU1CtY63fhTGm1EPiCSAiFg5Cfe92jvPhPhLp Q6nCac70C2qiO1j564Byp1THGCacduW8wKu99ZVuwfyfrLvweGlTqtCcttR6/GbTtxGZ+2 Gs/MxmMdnm+P5X2IXhyv1WQXmBywQ0BJ3MkoTbZfD8qDXtuhE/avA9zcnYNLmzdxoJi0CF W13CEM5H6YYvVRLbFVzyROWMnphgxPGUCx/zwyoxGYATNCiFAB+aA7QcMLgnnEsJJtGRXx CCxyu9cOPh5qv/pGC9QTatQqwAfBpF45dliRhm8duLaUWHKCIwwkLfs+MqV62A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by asiciliano: URL: https://cgit.FreeBSD.org/src/commit/?id=bce40c0242b167a541cc051b6b0dbcc5f3d04319 commit bce40c0242b167a541cc051b6b0dbcc5f3d04319 Merge: a33ead9c9cf3 2f8d44184155 Author: Alfonso S. Siciliano AuthorDate: 2022-03-13 01:38:51 +0000 Commit: Alfonso S. Siciliano CommitDate: 2022-03-13 01:38:51 +0000 Merge commit '2f8d4418415511460bd7b3b3e532f6b328cf993f' contrib/bsddialog/.gitignore | 1 + contrib/bsddialog/CHANGELOG | 61 ++++++++ contrib/bsddialog/GNUMakefile | 2 +- contrib/bsddialog/Makefile | 8 +- contrib/bsddialog/README.md | 5 +- contrib/bsddialog/bsddialog.1 | 12 +- contrib/bsddialog/bsddialog.c | 107 +++++++------ contrib/bsddialog/examples_library/checklist.c | 3 +- contrib/bsddialog/examples_library/compile | 2 +- contrib/bsddialog/examples_library/datebox.c | 8 +- contrib/bsddialog/examples_library/form.c | 4 +- contrib/bsddialog/examples_library/formw.c | 61 ++++++++ contrib/bsddialog/examples_library/infobox.c | 3 +- contrib/bsddialog/examples_library/menu.c | 3 +- contrib/bsddialog/examples_library/mixedlist.c | 20 ++- contrib/bsddialog/examples_library/msgbox.c | 3 +- contrib/bsddialog/examples_library/pause.c | 3 +- contrib/bsddialog/examples_library/radiolist.c | 3 +- contrib/bsddialog/examples_library/rangebox.c | 3 +- contrib/bsddialog/examples_library/theme.c | 13 +- contrib/bsddialog/examples_library/timebox.c | 8 +- contrib/bsddialog/examples_library/yesno.c | 3 +- contrib/bsddialog/examples_utility/checklist.sh | 27 +++- contrib/bsddialog/examples_utility/form.sh | 27 +++- contrib/bsddialog/examples_utility/gauge.sh | 4 +- contrib/bsddialog/examples_utility/infobox.sh | 3 +- contrib/bsddialog/examples_utility/inputbox.sh | 30 +++- contrib/bsddialog/examples_utility/menu.sh | 28 +++- contrib/bsddialog/examples_utility/mixedform.sh | 36 ++++- contrib/bsddialog/examples_utility/mixedgauge.sh | 3 +- contrib/bsddialog/examples_utility/msgbox.sh | 19 ++- contrib/bsddialog/examples_utility/passwordbox.sh | 30 +++- contrib/bsddialog/examples_utility/passwordform.sh | 30 +++- contrib/bsddialog/examples_utility/pause.sh | 36 +++++ contrib/bsddialog/examples_utility/radiolist.sh | 29 +++- contrib/bsddialog/examples_utility/timebox.sh | 34 +++++ contrib/bsddialog/examples_utility/treeview.sh | 17 --- contrib/bsddialog/examples_utility/yesno.sh | 23 ++- contrib/bsddialog/lib/GNUMakefile | 5 +- contrib/bsddialog/lib/Makefile | 11 +- contrib/bsddialog/lib/barbox.c | 54 +++---- contrib/bsddialog/lib/bsddialog.3 | 43 +++--- contrib/bsddialog/lib/bsddialog.h | 7 +- contrib/bsddialog/lib/bsddialog_theme.h | 11 +- contrib/bsddialog/lib/formbox.c | 108 +++++++++----- contrib/bsddialog/lib/infobox.c | 3 - contrib/bsddialog/lib/lib_util.c | 59 ++++---- contrib/bsddialog/lib/lib_util.h | 10 +- contrib/bsddialog/lib/libbsddialog.c | 9 +- contrib/bsddialog/lib/menubox.c | 118 ++++++++------- contrib/bsddialog/lib/messagebox.c | 9 +- contrib/bsddialog/lib/textbox.c | 5 +- contrib/bsddialog/lib/theme.c | 60 ++++---- contrib/bsddialog/lib/timebox.c | 165 +++++++++++++++------ 54 files changed, 957 insertions(+), 432 deletions(-) diff --cc contrib/bsddialog/.gitignore index 557ad3300d1f,000000000000..62f7b594a708 mode 100644,000000..100644 --- a/contrib/bsddialog/.gitignore +++ b/contrib/bsddialog/.gitignore @@@ -1,26 -1,0 +1,27 @@@ +bsddialog +*.o +*~ +*.a +examples_library/buildlist +examples_library/checklist +examples_library/datebox +examples_library/form ++examples_library/formw +examples_library/menu +examples_library/mixedlist +examples_library/radiolist +examples_library/theme +examples_library/treeview +examples_library/infobox +examples_library/msgbox +examples_library/pause +examples_library/rangebox +examples_library/sade +examples_library/timebox +examples_library/yesno +*.gz +lib/libbsddialog.so* +BSDDIALOG.geany +BSDDIALOG.tags +*.core +freebsd-lab/ diff --cc contrib/bsddialog/CHANGELOG index 000000000000,22eb3342cfe2..22eb3342cfe2 mode 000000,100644..100644 --- a/contrib/bsddialog/CHANGELOG +++ b/contrib/bsddialog/CHANGELOG diff --cc contrib/bsddialog/Makefile index 2abfb9e27cd7,000000000000..5d5d0cc923a5 mode 100644,000000..100644 --- a/contrib/bsddialog/Makefile +++ b/contrib/bsddialog/Makefile @@@ -1,56 -1,0 +1,50 @@@ +# PUBLIC DOMAIN - NO WARRANTY, see: +# +# +# Written in 2021 by Alfonso Sabato Siciliano + +OUTPUT= bsddialog +SOURCES= bsddialog.c +OBJECTS= ${SOURCES:.c=.o} +LIBPATH= ${.CURDIR}/lib +LIBBSDDIALOG= ${LIBPATH}/libbsddialog.so + - CFLAGS+= -I${LIBPATH} -std=gnu99 -Wno-format-zero-length \ - -fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -W \ - -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith \ - -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int \ - -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value \ - -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion \ - -Wno-unused-local-typedef -Wno-address-of-packed-member -Qunused-arguments ++CFLAGS+= -I${LIBPATH} -std=gnu99 -Wall -Wextra -Werror -Wno-unused-parameter +# `make -DDEBUG` +.if defined(DEBUG) +CFLAGS= -g -Wall -I${LIBPATH} +LIBDEBUG= -DDEBUG +.endif +LDFLAGS+= -Wl,-rpath=${LIBPATH} -L${LIBPATH} -lbsddialog + +BINDIR= /usr/local/bin +MAN= ${OUTPUT}.1 +GZIP= gzip -cn +MANDIR= /usr/local/share/man/man1 + +INSTALL= install +RM= rm -f + +all : ${OUTPUT} + +${OUTPUT}: ${LIBBSDDIALOG} ${OBJECTS} + ${CC} ${LDFLAGS} ${OBJECTS} -o ${.PREFIX} + +${LIBBSDDIALOG}: + make -C ${LIBPATH} ${LIBDEBUG} + +.c.o: + ${CC} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} + +install: + ${INSTALL} -s -m 555 ${OUTPUT} ${BINDIR} + ${GZIP} ${MAN} > ${MAN}.gz + ${INSTALL} -m 444 ${MAN}.gz ${MANDIR} + +unistall: + ${RM} ${BINDIR}/${OUTPUT} + ${RM} ${MANDIR}/${MAN}.gz + +clean: + make -C ${LIBPATH} clean + ${RM} ${OUTPUT} *.o *~ *.core ${MAN}.gz diff --cc contrib/bsddialog/README.md index 17af3a0db8e5,000000000000..3a814b38ddb4 mode 100644,000000..100644 --- a/contrib/bsddialog/README.md +++ b/contrib/bsddialog/README.md @@@ -1,116 -1,0 +1,117 @@@ - # BSDDialog 0.1 ++# BSDDialog 0.2 + + +This project provides **bsddialog** and **libbsddialog**, an utility and a +library to build scripts and tools with TUI dialogs and widgets. + + +## Intro + +Briefly: + + +Utility: + + +Library: + + +Screenshots: + + + +## Getting Started + +FreeBSD: + +``` +% git clone https://gitlab.com/alfix/bsddialog.git +% cd bsddialog +% make +% ./bsddialog --msgbox "Hello World!" 8 20 +``` + +Output: + +![screenshot](screenshot.png) + + +## Utility + +**Dialogs:** + +--checklist, --datebox, --form, --gauge, --inputbox, --menu, --mixedform, +--mixedgauge, --msgbox, --passwordbox, --passwordform, --pause, --radiolist, +--rangebox, --textbox, --timebox, --treeview, --yesno. + +**Manual** + + - [bsddialog(1)](https://alfonsosiciliano.gitlab.io/posts/2022-01-26-manual-bsddialog.html) + + +**Examples**: + +``` +% ./bsddialog --backtitle "TITLE" --title msgbox --msgbox "Hello World!" 5 30 +% ./bsddialog --theme blackwhite --title msgbox --msgbox "Hello World!" 5 30 +% ./bsddialog --begin-y 2 --default-no --title yesno --yesno "Hello World!" 5 30 +% ./bsddialog --ascii-lines --pause "Hello World!" 8 50 10 +% ./bsddialog --checklist "Space to select" 0 0 0 Name1 Desc1 off Name2 Desc2 on +% ./bsddialog --title yesno --hline "bsddialog" --yesno "Hello World!" 5 25 +% ./bsddialog --extra-button --help-button --yesno "Hello World!" 0 0 +``` + +and [Examples](https://gitlab.com/alfix/bsddialog/-/tree/main/examples_utility) +in the _Public Domain_ to build new projects: +``` +% sh ./examples_utility/checklist.sh +% sh ./examples_utility/form.sh +% sh ./examples_utility/gauge.sh +% sh ./examples_utility/infobox.sh +% sh ./examples_utility/inputbox.sh +% sh ./examples_utility/menu.sh +% sh ./examples_utility/mixedform.sh +% sh ./examples_utility/mixedgauge.sh +% sh ./examples_utility/msgbox.sh +% sh ./examples_utility/passwordbox.sh +% sh ./examples_utility/passwordform.sh ++% sh ./examples_utility/pause.sh +% sh ./examples_utility/radiolist.sh - % sh ./examples_utility/treeview.sh ++% sh ./examples_utility/timebox.sh +% sh ./examples_utility/yesno.sh +``` + +## Library + +**API** + + - [bsddialog.h](https://gitlab.com/alfix/bsddialog/-/blob/main/lib/bsddialog.h) + - [bsddialog\_theme.h](https://gitlab.com/alfix/bsddialog/-/blob/main/lib/bsddialog_theme.h) + + +**Manual** + + - [bsddialog(3)](https://alfonsosiciliano.gitlab.io/posts/2022-01-15-manual-libbsddialog.html) + + +**Examples**: + +[Examples](https://gitlab.com/alfix/bsddialog/-/tree/main/examples_library) +in the _Public Domain_ to build new projects: +``` +% cd examples_library +% sh compile +% ./datebox +% ./form +% ./infobox +% ./menu +% ./mixedlist +% ./msgbox +% ./pause +% ./radiolist +% ./rangebox +% ./theme +% ./timebox +% ./yesno +``` + diff --cc contrib/bsddialog/examples_library/formw.c index 000000000000,edbeec98f2a3..edbeec98f2a3 mode 000000,100644..100644 --- a/contrib/bsddialog/examples_library/formw.c +++ b/contrib/bsddialog/examples_library/formw.c diff --cc contrib/bsddialog/examples_utility/pause.sh index 000000000000,225549dddffb..225549dddffb mode 000000,100755..100755 --- a/contrib/bsddialog/examples_utility/pause.sh +++ b/contrib/bsddialog/examples_utility/pause.sh diff --cc contrib/bsddialog/examples_utility/timebox.sh index 000000000000,81d24d558dc9..81d24d558dc9 mode 000000,100755..100755 --- a/contrib/bsddialog/examples_utility/timebox.sh +++ b/contrib/bsddialog/examples_utility/timebox.sh diff --cc contrib/bsddialog/lib/Makefile index d9f2ce8ed69b,000000000000..962b059b3e03 mode 100644,000000..100644 --- a/contrib/bsddialog/lib/Makefile +++ b/contrib/bsddialog/lib/Makefile @@@ -1,76 -1,0 +1,75 @@@ +# PUBLIC DOMAIN - NO WARRANTY, see: +# +# +# Written in 2021 by Alfonso Sabato Siciliano + - VERSION = 0.1 ++VERSION = 0.2 +LIBRARY = bsddialog +LIBRARY_SO = lib${LIBRARY:=.so} +LIBRARY_A = lib${LIBRARY:=.a} +HEADERS = bsddialog.h bsddialog_theme.h bsddialog_progressview.h +SOURCES = barbox.c formbox.c infobox.c libbsddialog.c lib_util.c menubox.c \ + messagebox.c textbox.c theme.c timebox.c +OBJECTS = ${SOURCES:.c=.o} - CFLAGS += -fPIC -Wall -Wextra ++CFLAGS += -D_XOPEN_SOURCE_EXTENDED -fPIC -Wall -Wextra +LDFLAGS += -fstack-protector-strong -shared -Wl,-x -Wl,--fatal-warnings \ + -Wl,--warn-shared-textrel -Wl,-soname,${LIBRARY_SO}.${VERSION} \ + -L/usr/lib -lformw -lncursesw -ltinfow + +.if defined(DEBUG) +# `make -DDEBUG` - CFLAGS = -g -fPIC -Wall -Wextra ++CFLAGS = -g -D_XOPEN_SOURCE_EXTENDED -fPIC -Wall -Wextra +.else - CFLAGS += -O2 -pipe -std=gnu99 -Wno-format-zero-length \ - -fstack-protector-strong -Qunused-arguments ++CFLAGS += -std=gnu99 -fstack-protector-strong +.endif + +LOCALBASE = /usr/local +LN = ln -s -f +RM = rm -f +CP = cp +GZIP = gzip -cn +LDCONFIG = /sbin/ldconfig -m +MAN = ${OUTPUT}.3 +GZIP = gzip -cn +MANDIR = ${LOCALBASE}/share/man/man3 +INSTALL = install +RM = rm -f + +all : man ${LIBRARY} + +${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} + +man: + ${GZIP} ${LIBRARY}.3 > ${LIBRARY}.3.gz + +clean: + ${RM} ${LIBRARY_SO}* *.o *~ *.gz ${LIBRARY_A} + + +install: + ${INSTALL} -m 644 ${HEADERS} ${LOCALBASE}/include + ${INSTALL} -m 644 -s ${LIBRARY_SO}.${VERSION} ${LOCALBASE}/lib/ + ${INSTALL} -l rs ${LOCALBASE}/lib/${LIBRARY_SO}.${VERSION} ${LOCALBASE}/lib/${LIBRARY_SO} + ${INSTALL} -m 644 ${LIBRARY_A} ${LOCALBASE}/lib + ${LDCONFIG} ${LOCALBASE}/lib - ${INSTALL} -m 644 ${LIBRARY}.3.gz ${MNADIR} ++ ${INSTALL} -m 644 ${LIBRARY}.3.gz ${MANDIR} + +unistall: + ${RM} ${LOCALBASE}/include/${LIBRARY}*.h + ${RM} ${LOCALBASE}/lib/${LIBRARY_SO} + ${RM} ${LOCALBASE}/lib/${LIBRARY_SO}.${VERSION} + ${LDCONFIG} ${LOCALBASE}/lib + ${RM} ${MANDIR}/${LIBRARY}.3.gz