From f99b03ba56598b9568697e54ed2446e3ad9cfc9e Mon Sep 17 00:00:00 2001 From: Brian Read Date: Fri, 14 Jul 2023 22:35:31 +0100 Subject: [PATCH] initial commit of file from CVS for whiptail on Fri 14 Jul 22:35:31 BST 2023 --- .gitattributes | 1 + .gitignore | 3 + Makefile | 21 ++ README.md | 10 +- contriborbase | 1 + newt-0.51.5.patch.2004082000 | 374 +++++++++++++++++++++++++++++++++++ newt-0.51.5.patch.2006100300 | 75 +++++++ newt-0.51.5.patch.2006100301 | 15 ++ whiptail-0.51.5.tar.gz | 3 + whiptail.spec | 88 +++++++++ 10 files changed, 590 insertions(+), 1 deletion(-) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 contriborbase create mode 100644 newt-0.51.5.patch.2004082000 create mode 100644 newt-0.51.5.patch.2006100300 create mode 100644 newt-0.51.5.patch.2006100301 create mode 100644 whiptail-0.51.5.tar.gz create mode 100644 whiptail.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..f087b42 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.tar.gz filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1534ba5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.rpm +*.log +*spec-20* diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..bebe46c --- /dev/null +++ b/Makefile @@ -0,0 +1,21 @@ +# Makefile for source rpm: whiptail +# $Id: Makefile,v 1.1 2016/02/04 18:15:59 vip-ire Exp $ +NAME := whiptail +SPECFILE = $(firstword $(wildcard *.spec)) + +define find-makefile-common +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +endef + +MAKEFILE_COMMON := $(shell $(find-makefile-common)) + +ifeq ($(MAKEFILE_COMMON),) +# attept a checkout +define checkout-makefile-common +test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 +endef + +MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) +endif + +include $(MAKEFILE_COMMON) diff --git a/README.md b/README.md index ced75f1..95312cf 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,11 @@ # whiptail -3rd Party (Maintained by Koozali) git repo for whiptail smeserver \ No newline at end of file +3rd Party (Maintained by Koozali) git repo for whiptail smeserver + +## Description + +
*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.* +*Once it has been checked, then this comment will be deleted* +
+ +WhipTail is a Unix shell utility for creating dialog boxes from shell scripts. It allows an user to display a variety of questions or display messages using dialog boxes from a shell script using the newt library. It can present a finite set of options from which the user can choose one, display forms, display calendars, etc. diff --git a/contriborbase b/contriborbase new file mode 100644 index 0000000..ef36a67 --- /dev/null +++ b/contriborbase @@ -0,0 +1 @@ +sme10 diff --git a/newt-0.51.5.patch.2004082000 b/newt-0.51.5.patch.2004082000 new file mode 100644 index 0000000..05e61ad --- /dev/null +++ b/newt-0.51.5.patch.2004082000 @@ -0,0 +1,374 @@ +diff -Nur -x '*.orig' -x '*.rej' newt-0.51.5/dialogboxes.c mezzanine_patched_newt-0.51.5/dialogboxes.c +--- newt-0.51.5/dialogboxes.c 2003-01-03 15:54:45.000000000 -0500 ++++ mezzanine_patched_newt-0.51.5/dialogboxes.c 2004-08-20 20:13:20.000000000 -0400 +@@ -18,15 +18,18 @@ + + static void addButtons(int height, int width, newtComponent form, + newtComponent * okay, newtComponent * cancel, ++ char * left, ++ char * right, + int flags) { + if (flags & FLAG_NOCANCEL) { +- *okay = makeButton((width - 8) / 2, height - buttonHeight - 1, "Ok"); ++ *okay = makeButton(((width - 18) / 3) * 2 + 9, ++ height - buttonHeight - 1, right); + *cancel = NULL; + newtFormAddComponent(form, *okay); + } else { +- *okay = makeButton((width - 18) / 3, height - buttonHeight - 1, "Ok"); +- *cancel = makeButton(((width - 18) / 3) * 2 + 9, +- height - buttonHeight - 1, "Cancel"); ++ *cancel = makeButton((width - 18) / 3, height - buttonHeight - 1, left); ++ *okay = makeButton(((width - 18) / 3) * 2 + 9, ++ height - buttonHeight - 1, right); + newtFormAddComponents(form, *okay, *cancel, NULL); + } + } +@@ -129,10 +132,11 @@ + } + + int inputBox(const char * text, int height, int width, poptContext optCon, +- int flags, const char ** result) { ++ char * left, char * right, int flags, const char ** result) { + newtComponent form, entry, okay, cancel, answer, tb; + const char * val; + int rc = DLG_OKAY; ++ int eFlag = (flags & (NEWT_FLAG_HIDDEN|NEWT_FLAG_PASSWORD)); + int top; + + val = poptGetArg(optCon); +@@ -141,11 +145,11 @@ + + form = newtForm(NULL, NULL, 0); + entry = newtEntry(1, top + 1, val, width - 2, &val, +- NEWT_FLAG_SCROLL | NEWT_FLAG_RETURNEXIT); ++ NEWT_FLAG_SCROLL | NEWT_FLAG_RETURNEXIT | eFlag); + + newtFormAddComponents(form, tb, entry, NULL); + +- addButtons(height, width, form, &okay, &cancel, flags); ++ addButtons(height, width, form, &okay, &cancel, left, right, flags); + + answer = newtRunForm(form); + if (answer == cancel) +@@ -157,7 +161,7 @@ + } + + int listBox(const char * text, int height, int width, poptContext optCon, +- int flags, const char ** result) { ++ char * left, char * right, int flags, const char ** result) { + newtComponent form, okay, tb, answer, listBox; + newtComponent cancel = NULL; + const char * arg; +@@ -228,7 +232,7 @@ + + newtFormAddComponents(form, tb, listBox, NULL); + +- addButtons(height, width, form, &okay, &cancel, flags); ++ addButtons(height, width, form, &okay, &cancel, left, right, flags); + + answer = newtRunForm(form); + if (answer == cancel) +@@ -241,7 +245,8 @@ + } + + int checkList(const char * text, int height, int width, poptContext optCon, +- int useRadio, int flags, const char *** selections) { ++ int useRadio, char * left, char * right, int flags, ++ const char *** selections) { + newtComponent form, okay, tb, subform, answer; + newtComponent sb = NULL, cancel = NULL; + const char * arg; +@@ -329,7 +334,7 @@ + + newtFormAddComponents(form, tb, subform, NULL); + +- addButtons(height, width, form, &okay, &cancel, flags); ++ addButtons(height, width, form, &okay, &cancel, left, right, flags); + + answer = newtRunForm(form); + if (answer == cancel) +@@ -364,7 +369,8 @@ + return rc; + } + +-int messageBox(const char * text, int height, int width, int type, int flags) { ++int messageBox(const char * text, int height, int width, char *left, ++ char *right, int type, int flags) { + newtComponent form, yes, tb, answer; + newtComponent no = NULL; + int tFlag = (flags & FLAG_SCROLL_TEXT) ? NEWT_FLAG_SCROLL : 0; +@@ -376,7 +382,17 @@ + newtTextboxSetText(tb, text); + + newtFormAddComponent(form, tb); +- ++ ++ /* If left=Cancel and right=Ok, we probably didn't get any --left and ++ * --right arguments passed. Assume we want Yes and No instead. This has ++ * the side effect of not being able to pass in "Cancel" and "Ok" but ++ * I can live with that. ++ */ ++ if (!strcmp(left,"Cancel") && !strcmp(right,"Ok")) { ++ left = "Yes"; ++ right = "No"; ++ } ++ + switch ( type ) { + case MSGBOX_INFO: + break; +@@ -385,9 +401,9 @@ + newtFormAddComponent(form, yes); + break; + default: +- yes = makeButton((width - 16) / 3, height - 1 - buttonHeight, "Yes"); +- no = makeButton(((width - 16) / 3) * 2 + 9, height - 1 - buttonHeight, +- "No"); ++ yes = makeButton((width - 18) / 3, height - 1 - buttonHeight, left); ++ no = makeButton(((width - 18) / 3) * 2 + 9, height - 1 - buttonHeight, ++ right); + newtFormAddComponents(form, yes, no, NULL); + + if (flags & FLAG_DEFAULT_NO) +diff -Nur -x '*.orig' -x '*.rej' newt-0.51.5/dialogboxes.h mezzanine_patched_newt-0.51.5/dialogboxes.h +--- newt-0.51.5/dialogboxes.h 2003-01-03 15:54:45.000000000 -0500 ++++ mezzanine_patched_newt-0.51.5/dialogboxes.h 2004-08-20 20:13:12.000000000 -0400 +@@ -16,13 +16,15 @@ + #define DLG_OKAY 0 + #define DLG_CANCEL 1 + +-int messageBox(const char * text, int height, int width, int type, int flags); ++int messageBox(const char * text, int height, int width, char *left, ++ char *right, int type, int flags); + int checkList(const char * text, int height, int width, poptContext optCon, +- int useRadio, int flags, const char *** selections); ++ int useRadio, char * left, char * right, ++ int flags, const char *** selections); + int listBox(const char * text, int height, int width, poptContext optCon, +- int flags, const char ** result); ++ char * left, char * right, int flags, const char ** result); + int inputBox(const char * text, int height, int width, poptContext optCon, +- int flags, const char ** result); ++ char * left, char * right, int flags, const char ** result); + int gauge(const char * text, int height, int width, poptContext optCon, int fd, + int flags); + void useFullButtons(int state); +diff -Nur -x '*.orig' -x '*.rej' newt-0.51.5/test.c mezzanine_patched_newt-0.51.5/test.c +--- newt-0.51.5/test.c 2003-01-04 14:15:25.000000000 -0500 ++++ mezzanine_patched_newt-0.51.5/test.c 2004-08-20 20:11:39.000000000 -0400 +@@ -33,13 +33,13 @@ + } + + int main(void) { +- newtComponent b1, b2, r1, r2, r3, e2, e3, l1, l2, l3, scale; ++ newtComponent b1, b2, r1, r2, r3, e2, e3, e4, l1, l2, l3, l4, scale; + newtComponent lb, t, rsf, answer, timeLabel; + newtComponent cs[10]; + newtComponent f, chklist, e1; + struct callbackInfo cbis[3]; + char results[10]; +- const char * enr2, * enr3, *scaleVal; ++ const char * enr2, * enr3, * scaleVal, * enr4; + void ** selectedList; + int i, numsel; + char buf[20]; +@@ -81,10 +81,11 @@ + l1 = newtLabel(3, 6, "Scale:"); + l2 = newtLabel(3, 7, "Scrolls:"); + l3 = newtLabel(3, 8, "Hidden:"); ++ l4 = newtLabel(3, 9, "Password:"); + e1 = newtEntry(12, 6, "", 20, &scaleVal, 0); + e2 = newtEntry(12, 7, "Default", 20, &enr2, NEWT_FLAG_SCROLL); +-/* e3 = newtEntry(12, 8, NULL, 20, &enr3, NEWT_FLAG_HIDDEN); */ +- e3 = newtEntry(12, 8, NULL, 20, &enr3, NEWT_FLAG_PASSWORD); ++ e3 = newtEntry(12, 8, NULL, 20, &enr3, NEWT_FLAG_HIDDEN); ++ e4 = newtEntry(12, 9, NULL, 20, &enr4, NEWT_FLAG_PASSWORD); + + cbis[0].state = &results[0]; + cbis[0].en = e1; +@@ -94,7 +95,7 @@ + + newtFormSetHeight(chklist, 3); + +- newtFormAddComponents(f, b1, b2, l1, l2, l3, e1, e2, e3, chklist, NULL); ++ newtFormAddComponents(f, b1, b2, l1, l2, l3, l4, e1, e2, e3, e4, chklist, NULL); + newtFormAddComponents(f, rsf, scale, NULL); + + lb = newtListbox(45, 1, 6, NEWT_FLAG_MULTIPLE | NEWT_FLAG_BORDER | +@@ -141,6 +142,7 @@ + scaleVal = strdup(scaleVal); + enr2 = strdup(enr2); + enr3 = strdup(enr3); ++ enr4 = strdup(enr4); + + selectedList = newtListboxGetSelection(lb, &numsel); + +@@ -153,6 +155,7 @@ + printf("got string 1: %s\n", scaleVal); + printf("got string 2: %s\n", enr2); + printf("got string 3: %s\n", enr3); ++ printf("got string 4: %s\n", enr4); + + printf("\nSelected listbox items (%d):\n", numsel); + if(selectedList) { +diff -Nur -x '*.orig' -x '*.rej' newt-0.51.5/whiptail.c mezzanine_patched_newt-0.51.5/whiptail.c +--- newt-0.51.5/whiptail.c 2003-01-03 15:54:45.000000000 -0500 ++++ mezzanine_patched_newt-0.51.5/whiptail.c 2004-08-20 20:13:12.000000000 -0400 +@@ -47,16 +47,22 @@ + int rc = 1; + int flags = 0; + int defaultNo = 0; ++ int hidden = 0; ++ int password = 0; + int separateOutput = 0; + const char * result; + const char ** selections, ** next; + char * title = NULL; + char * backtitle = NULL; ++ char * left = "Cancel"; ++ char * right = "Ok"; + struct poptOption optionsTable[] = { + { "backtitle", '\0', POPT_ARG_STRING, &backtitle, 0 }, + { "checklist", '\0', 0, 0, OPT_CHECKLIST }, + { "clear", '\0', 0, &clear, 0 }, + { "defaultno", '\0', 0, &defaultNo, 0 }, ++ { "hidden", '\0', 0, &hidden, 0 }, ++ { "password", '\0', 0, &password, 0 }, + { "inputbox", '\0', 0, 0, OPT_INPUTBOX }, + { "fb", '\0', 0, 0, OPT_FULLBUTTONS }, + { "fullbuttons", '\0', 0, 0, OPT_FULLBUTTONS }, +@@ -70,6 +76,8 @@ + { "scrolltext", '\0', 0, &scrollText, 0 }, + { "separate-output", '\0', 0, &separateOutput, 0 }, + { "title", '\0', POPT_ARG_STRING, &title, 0 }, ++ { "left", '\0', POPT_ARG_STRING, &left, 0 }, ++ { "right", '\0', POPT_ARG_STRING, &right, 0 }, + { "yesno", '\0', 0, 0, OPT_YESNO }, + { 0, 0, 0, 0, 0 } + }; +@@ -164,32 +172,35 @@ + if (noItem) flags |= FLAG_NOITEM; + if (scrollText) flags |= FLAG_SCROLL_TEXT; + if (defaultNo) flags |= FLAG_DEFAULT_NO; ++ if (hidden) flags |= NEWT_FLAG_HIDDEN; ++ if (password) flags |= NEWT_FLAG_PASSWORD; + + switch (mode) { +- case MODE_MSGBOX: +- rc = messageBox(text, height, width, MSGBOX_MSG, flags); ++ case MODE_MSGBOX: ++ rc = messageBox(text, height, width, left, right, MSGBOX_MSG, flags); + break; + + case MODE_INFOBOX: +- rc = messageBox(text, height, width, MSGBOX_INFO, flags); ++ rc = messageBox(text, height, width, left, right, MSGBOX_INFO, flags); + break; + + case MODE_YESNO: +- rc = messageBox(text, height, width, MSGBOX_YESNO, flags); ++ rc = messageBox(text, height, width, left, right, MSGBOX_YESNO, flags); + break; + + case MODE_INPUTBOX: +- rc = inputBox(text, height, width, optCon, flags, &result); ++ rc = inputBox(text, height, width, optCon, left, right, flags, &result); + if (!rc) fprintf(stderr, "%s", result); + break; + + case MODE_MENU: +- rc = listBox(text, height, width, optCon, flags, &result); ++ rc = listBox(text, height, width, optCon, left, right, flags, &result); + if (!rc) fprintf(stderr, "%s", result); + break; + + case MODE_RADIOLIST: +- rc = checkList(text, height, width, optCon, 1, flags, &selections); ++ rc = checkList(text, height, width, optCon, 1, left, right, ++ flags, &selections); + if (!rc) { + fprintf(stderr, "%s", selections[0]); + free(selections); +@@ -197,7 +208,8 @@ + break; + + case MODE_CHECKLIST: +- rc = checkList(text, height, width, optCon, 0, flags, &selections); ++ rc = checkList(text, height, width, optCon, 0, left, right, flags, ++ &selections); + + if (!rc) { + for (next = selections; *next; next++) { +diff -Nur -x '*.orig' -x '*.rej' newt-0.51.5/whiptcl.c mezzanine_patched_newt-0.51.5/whiptcl.c +--- newt-0.51.5/whiptcl.c 2000-02-16 06:34:40.000000000 -0500 ++++ mezzanine_patched_newt-0.51.5/whiptcl.c 2004-08-20 20:13:12.000000000 -0400 +@@ -72,6 +72,8 @@ + char * result; + char ** selections, ** next; + char * title = NULL; ++ char * right = "Ok"; ++ char * left = "Cancel"; + struct poptOption optionsTable[] = { + { "checklist", '\0', 0, 0, OPT_CHECKLIST }, + { "defaultno", '\0', 0, &defaultNo, 0 }, +@@ -83,6 +85,8 @@ + { "radiolist", '\0', 0, 0, OPT_RADIOLIST }, + { "scrolltext", '\0', 0, &scrollText, 0 }, + { "title", '\0', POPT_ARG_STRING, &title, 0 }, ++ { "left", '\0', POPT_ARG_STRING, &left, 0 }, ++ { "right", '\0', POPT_ARG_STRING, &right, 0 }, + { "yesno", '\0', 0, 0, OPT_YESNO }, + { 0, 0, 0, 0, 0 } + }; +@@ -180,11 +184,11 @@ + + switch (mode) { + case MODE_MSGBOX: +- rc = messageBox(text, height, width, MSGBOX_MSG, flags); ++ rc = messageBox(text, height, width, left, right, MSGBOX_MSG, flags); + break; + + case MODE_YESNO: +- rc = messageBox(text, height, width, MSGBOX_YESNO, flags); ++ rc = messageBox(text, height, width, left, right, MSGBOX_YESNO, flags); + if (rc == DLG_OKAY) + interp->result = "yes"; + else +@@ -193,7 +197,7 @@ + break; + + case MODE_INPUTBOX: +- rc = inputBox(text, height, width, optCon, flags, &result); ++ rc = inputBox(text, height, width, optCon, left, right, flags, &result); + if (!rc) { + interp->result = strdup(result); + interp->freeProc = TCL_DYNAMIC; +@@ -201,7 +205,7 @@ + break; + + case MODE_MENU: +- rc = listBox(text, height, width, optCon, flags, &result); ++ rc = listBox(text, height, width, optCon, left, right, flags, &result); + if (!rc) { + interp->result = strdup(result); + interp->freeProc = TCL_DYNAMIC; +@@ -209,7 +213,8 @@ + break; + + case MODE_RADIOLIST: +- rc = checkList(text, height, width, optCon, 1, flags, &selections); ++ rc = checkList(text, height, width, optCon, 1, left, right, ++ flags, &selections); + if (!rc) { + interp->result = strdup(selections[0]); + interp->freeProc = TCL_DYNAMIC; +@@ -217,7 +222,8 @@ + break; + + case MODE_CHECKLIST: +- rc = checkList(text, height, width, optCon, 0, flags, &selections); ++ rc = checkList(text, height, width, optCon, 0, left, right, ++ flags, &selections); + + if (!rc) { + for (next = selections; *next; next++) diff --git a/newt-0.51.5.patch.2006100300 b/newt-0.51.5.patch.2006100300 new file mode 100644 index 0000000..f46aec7 --- /dev/null +++ b/newt-0.51.5.patch.2006100300 @@ -0,0 +1,75 @@ +Only in newt-0.51.5: config.h +Only in newt-0.51.5: config.log +Only in newt-0.51.5: config.status +diff -ru newt-0.51.5.orig/dialogboxes.c newt-0.51.5/dialogboxes.c +--- newt-0.51.5.orig/dialogboxes.c 2006-10-03 14:26:48.052081000 -0400 ++++ newt-0.51.5/dialogboxes.c 2006-10-03 14:55:05.083400000 -0400 +@@ -161,7 +161,7 @@ + } + + int listBox(const char * text, int height, int width, poptContext optCon, +- char * left, char * right, int flags, const char ** result) { ++ char * left, char * right, int flags, const char ** result, char * def) { + newtComponent form, okay, tb, answer, listBox; + newtComponent cancel = NULL; + const char * arg; +@@ -228,6 +228,10 @@ + for (i = 0; i < numItems; i++) { + sprintf(buf, format, itemInfo[i].tag, itemInfo[i].text); + newtListboxAddEntry(listBox, buf, (void *) i); ++ if (!strcmp(def, itemInfo[i].tag)) ++ { ++ newtListboxSetCurrent(listBox, i); ++ } + } + + newtFormAddComponents(form, tb, listBox, NULL); +diff -ru newt-0.51.5.orig/dialogboxes.h newt-0.51.5/dialogboxes.h +--- newt-0.51.5.orig/dialogboxes.h 2006-10-03 14:26:48.062082000 -0400 ++++ newt-0.51.5/dialogboxes.h 2006-10-03 14:54:35.302668000 -0400 +@@ -22,7 +22,7 @@ + int useRadio, char * left, char * right, + int flags, const char *** selections); + int listBox(const char * text, int height, int width, poptContext optCon, +- char * left, char * right, int flags, const char ** result); ++ char * left, char * right, int flags, const char ** result, char * def); + int inputBox(const char * text, int height, int width, poptContext optCon, + char * left, char * right, int flags, const char ** result); + int gauge(const char * text, int height, int width, poptContext optCon, int fd, +Only in newt-0.51.5: Makefile +Only in newt-0.51.5: shared +diff -ru newt-0.51.5.orig/whiptail.c newt-0.51.5/whiptail.c +--- newt-0.51.5.orig/whiptail.c 2006-10-03 14:26:48.082081000 -0400 ++++ newt-0.51.5/whiptail.c 2006-10-03 14:59:14.911307000 -0400 +@@ -56,8 +56,10 @@ + char * backtitle = NULL; + char * left = "Cancel"; + char * right = "Ok"; ++ char * def_item = ""; + struct poptOption optionsTable[] = { + { "backtitle", '\0', POPT_ARG_STRING, &backtitle, 0 }, ++ { "default-item", '\0', POPT_ARG_STRING, &def_item, 0 }, + { "checklist", '\0', 0, 0, OPT_CHECKLIST }, + { "clear", '\0', 0, &clear, 0 }, + { "defaultno", '\0', 0, &defaultNo, 0 }, +@@ -194,7 +196,7 @@ + break; + + case MODE_MENU: +- rc = listBox(text, height, width, optCon, left, right, flags, &result); ++ rc = listBox(text, height, width, optCon, left, right, flags, &result, def_item); + if (!rc) fprintf(stderr, "%s", result); + break; + +diff -ru newt-0.51.5.orig/whiptcl.c newt-0.51.5/whiptcl.c +--- newt-0.51.5.orig/whiptcl.c 2006-10-03 14:26:48.092082000 -0400 ++++ newt-0.51.5/whiptcl.c 2006-10-03 14:53:44.961340000 -0400 +@@ -205,7 +205,7 @@ + break; + + case MODE_MENU: +- rc = listBox(text, height, width, optCon, left, right, flags, &result); ++ rc = listBox(text, height, width, optCon, left, right, flags, &result, ""); + if (!rc) { + interp->result = strdup(result); + interp->freeProc = TCL_DYNAMIC; diff --git a/newt-0.51.5.patch.2006100301 b/newt-0.51.5.patch.2006100301 new file mode 100644 index 0000000..d190f91 --- /dev/null +++ b/newt-0.51.5.patch.2006100301 @@ -0,0 +1,15 @@ +diff -Nur -x '*.orig' -x '*.rej' newt-0.51.5/whiptail.c mezzanine_patched_newt-0.51.5/whiptail.c +--- newt-0.51.5/whiptail.c 2006-10-11 12:11:54.000000000 -0400 ++++ mezzanine_patched_newt-0.51.5/whiptail.c 2006-10-11 12:10:25.000000000 -0400 +@@ -79,7 +79,11 @@ + { "separate-output", '\0', 0, &separateOutput, 0 }, + { "title", '\0', POPT_ARG_STRING, &title, 0 }, + { "left", '\0', POPT_ARG_STRING, &left, 0 }, ++ { "cancel-label", '\0', POPT_ARG_STRING, &left, 0 }, ++ { "no-label", '\0', POPT_ARG_STRING, &left, 0 }, + { "right", '\0', POPT_ARG_STRING, &right, 0 }, ++ { "ok-label", '\0', POPT_ARG_STRING, &right, 0 }, ++ { "yes-label", '\0', POPT_ARG_STRING, &right, 0 }, + { "yesno", '\0', 0, 0, OPT_YESNO }, + { 0, 0, 0, 0, 0 } + }; diff --git a/whiptail-0.51.5.tar.gz b/whiptail-0.51.5.tar.gz new file mode 100644 index 0000000..3a43b7a --- /dev/null +++ b/whiptail-0.51.5.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37c65e05ddc95ac5826e7e375f96103b4a06a9bdbb28edea36012ff0a582bab +size 14770 diff --git a/whiptail.spec b/whiptail.spec new file mode 100644 index 0000000..9204af2 --- /dev/null +++ b/whiptail.spec @@ -0,0 +1,88 @@ +# $Id: whiptail.spec,v 1.1 2016/02/04 18:15:59 vip-ire Exp $ + +%define pythonver 2.2 + +Summary: A console dialog tool, for use by SME server console +Name: whiptail +%define version 0.51.5 +Version: %{version} +Release: 9%{?dist} +License: LGPL +Group: System Environment/Libraries +Source: whiptail-%{version}.tar.gz +Patch100: newt-0.51.5.patch.2004082000 +Patch101: newt-0.51.5.patch.2006100300 +Patch102: newt-0.51.5.patch.2006100301 +BuildRequires: newt-devel +BuildRequires: popt-devel +Requires: newt +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%Description +whiptail is a /usr/bin/dialog replacement. This version contains +modifications for use by the SME server console program. + +%prep +%setup -q + +%build +D= +cc -O2 -Wall -I/usr/include/slang -D_GNU_SOURCE \ + -c -o whiptail.o whiptail.c +cc -O2 -Wall -I/usr/include/slang -D_GNU_SOURCE \ + $(if grep -q _newt_wstr %_libdir/libnewt.so; then echo -Dwstrlen=_newt_wstrlen; fi) \ + -c -o dialogboxes.o dialogboxes.c +gcc -g -o whiptail whiptail.o dialogboxes.o \ + -lnewt -lslang -lm -lpopt + +%install +rm -rf $RPM_BUILD_ROOT +mkdir -p $RPM_BUILD_ROOT/sbin/e-smith +install -m 755 whiptail $RPM_BUILD_ROOT/sbin/e-smith + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr (-,root,root) +%doc COPYING +/sbin/e-smith/whiptail + +%changelog +* Fri Jul 14 2023 BogusDateBot +- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday, + by assuming the date is correct and changing the weekday. + +* Sun Apr 29 2007 Shad L. Lords +- Clean up spec so package can be built by koji/plague + +* Sun Apr 29 2007 Shad L. Lords 0.51.5-9 +- Better fix for finding correct libdir + +* Sat Apr 28 2007 Shad L. Lords 0.51.5-8 +- Change to dist for tagging release +- Use correct lib for 32/64 bit + +* Thu Feb 1 2007 Charlie Brady 0.51.5-7 +- Autodetect need for -Dwstrlen=_newt_wstrlen. + +* Thu Feb 1 2007 Charlie Brady 0.51.5-6 +- Fix for building under FC6/RHEL5 + +* Thu Feb 1 2007 Charlie Brady 0.51.5-5 +- Repackage so that build is done against the installed newt library. + (Patches are left included in SRPM for informational reasons). + +* Thu Dec 07 2006 Shad L. Lords +- Update to new release naming. No functional changes. +- Make Packager generic + +* Tue Oct 03 2006 Charlie Brady 0.51.5-3es1 +- Add --{ok,yes,cancel,no}-label aliases for --left and --right, for + compatibility with 'dialog'. + +* Tue Oct 03 2006 Charlie Brady 0.51.5-2es1 +- Add --default-item option for use in listBox. [SME: 1959] + +* Wed Feb 16 2005 Charlie Brady 0.51.5-1es1 +- Initial - forked from newt-0.51.5-1es1