Add patch to build kconfig-frontends under Cygwin

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4561 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo 2012-04-05 21:34:24 +00:00
parent 48c8d782f9
commit ee6cf645bc
5 changed files with 247 additions and 47 deletions

44
misc/tools/README.txt Normal file
View File

@ -0,0 +1,44 @@
misc/tools/README.txt
=====================
genromfs-0.5.2.tar.gz
This is a snapshot of the genromfs tarball taken from
http://sourceforge.net/projects/romfs/. This snapshot is provided to
assure that a working version of genromfs is always available for NuttX.
This tool is also include in the buildroot and can be built automatically
from the buildroot.
kconfig-frontends-3.3.0-1.tar.gz
This is a snapshot of the kconfig-frontends tarball taken from
http://ymorin.is-a-geek.org/projects/kconfig-frontends on April 5, 2012.
This snapshot is provided so that a working version of the mconf
utility is always available.
General build instructions:
./configure
make
make install
To suppress the graphical interfaces:
./configure --disable-gconf --disable-qconf
make
make install
kconfig-frontends-3.3.0-1-libintl.patch
The above build instructions did not work for me under my Cygwin
installation. This patch is a awful hack but will successfully
build 'mconf' under Cygwin.
cat kconfig-frontends-3.3.0-1-libintl.patch | patch -p0
cd kconfig-frontends-3.3.0-1
./configure --disable-gconf --disable-qconf
make
make install

View File

@ -0,0 +1,73 @@
diff -ru kconfig-frontends-3.3.0-1.orig//frontends/nconf/nconf.c kconfig-frontends-3.3.0-1/frontends/nconf/nconf.c
--- kconfig-frontends-3.3.0-1.orig//frontends/nconf/nconf.c 2012-03-20 16:07:45.000000000 -0600
+++ kconfig-frontends-3.3.0-1/frontends/nconf/nconf.c 2012-04-05 15:16:06.590563200 -0600
@@ -1503,7 +1503,7 @@
}
notimeout(stdscr, FALSE);
- ESCDELAY = 1;
+ //ESCDELAY = 1;
/* set btns menu */
curses_menu = new_menu(curses_menu_items);
diff -ru kconfig-frontends-3.3.0-1.orig//frontends/nconf/nconf.h kconfig-frontends-3.3.0-1/frontends/nconf/nconf.h
--- kconfig-frontends-3.3.0-1.orig//frontends/nconf/nconf.h 2012-03-20 16:07:45.000000000 -0600
+++ kconfig-frontends-3.3.0-1/frontends/nconf/nconf.h 2012-04-05 15:13:36.189960800 -0600
@@ -15,7 +15,7 @@
#include <string.h>
#include <unistd.h>
#include <locale.h>
-#include <curses.h>
+#include <ncurses/curses.h>
#include <menu.h>
#include <panel.h>
#include <form.h>
diff -ru kconfig-frontends-3.3.0-1.orig//libs/lxdialog/dialog.h kconfig-frontends-3.3.0-1/libs/lxdialog/dialog.h
--- kconfig-frontends-3.3.0-1.orig//libs/lxdialog/dialog.h 2012-03-20 16:07:45.000000000 -0600
+++ kconfig-frontends-3.3.0-1/libs/lxdialog/dialog.h 2012-04-05 14:58:35.010416300 -0600
@@ -26,11 +26,7 @@
#include <string.h>
#include <stdbool.h>
-#ifndef KBUILD_NO_NLS
-# include <libintl.h>
-#else
# define gettext(Msgid) ((const char *) (Msgid))
-#endif
#ifdef __sun__
#define CURS_MACROS
diff -ru kconfig-frontends-3.3.0-1.orig//libs/parser/lkc.h kconfig-frontends-3.3.0-1/libs/parser/lkc.h
--- kconfig-frontends-3.3.0-1.orig//libs/parser/lkc.h 2012-03-20 16:07:45.000000000 -0600
+++ kconfig-frontends-3.3.0-1/libs/parser/lkc.h 2012-04-05 14:59:02.969015400 -0600
@@ -8,14 +8,10 @@
#include "expr.h"
-#ifndef KBUILD_NO_NLS
-# include <libintl.h>
-#else
static inline const char *gettext(const char *txt) { return txt; }
static inline void textdomain(const char *domainname) {}
static inline void bindtextdomain(const char *name, const char *dir) {}
static inline char *bind_textdomain_codeset(const char *dn, char *c) { return c; }
-#endif
#ifdef __cplusplus
extern "C" {
diff -ru kconfig-frontends-3.3.0-1.orig//libs/parser/yconf.c kconfig-frontends-3.3.0-1/libs/parser/yconf.c
--- kconfig-frontends-3.3.0-1.orig//libs/parser/yconf.c 2012-03-22 16:34:21.000000000 -0600
+++ kconfig-frontends-3.3.0-1/libs/parser/yconf.c 2012-04-05 14:59:40.732175300 -0600
@@ -285,12 +285,6 @@
#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
#ifndef YY_
-# if YYENABLE_NLS
-# if ENABLE_NLS
-# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
-# define YY_(msgid) dgettext ("bison-runtime", msgid)
-# endif
-# endif
# ifndef YY_
# define YY_(msgid) msgid
# endif

Binary file not shown.

View File

@ -2515,39 +2515,80 @@ static int stm32_usbinterrupt(int irq, FAR void *context)
static int stm32_epoutconfigure(FAR struct usbdev_ep_s *privep, uint8_t eptype,
uint16_t maxpacket)
{
FAR struct stm32_ep_s *privep = (FAR struct stm32_ep_s *)ep;
uint32_t daintmsk;
uint32_t mpsiz;
uint32_t regaddr;
uint32_t regval;
usbtrace(TRACE_EPCONFIGURE, privep->epphy);
DEBUGASSERT(desc->addr == ep->eplog);
/* Setup Endpoint Control Register */
/* For EP0, the packet size is encoded */
/* Reset the data toggles */
#warning "Missing logic"
/* Set the endpoint type */
switch (eptype)
if (privep->epphy == EP0)
{
case USB_EP_ATTR_XFER_CONTROL:
break;
case USB_EP_ATTR_XFER_ISOC:
break;
case USB_EP_ATTR_XFER_BULK:
break;
case USB_EP_ATTR_XFER_INT:
break;
DEBUGASSERT(eptype == USB_EP_ATTR_XFER_CONTROL);
/* Map the size in bytes to the encoded value in the register */
switch (maxpacket)
{
case 8:
mpsiz = OTGFS_DOEPCTL0_MPSIZ_8;
break;
case 16:
mpsiz = OTGFS_DOEPCTL0_MPSIZ_16;
break;
case 32:
mpsiz = OTGFS_DOEPCTL0_MPSIZ_32;
break;
case 64:
mpsiz = OTGFS_DOEPCTL0_MPSIZ_64;
break;
default:
udbg("Unsupported maxpacket: %d\n", maxpacket);
return -EINVAL;
}
}
#warning "Missing logic"
/* Reset endpoint status */
/* For other endpoints, the packet size is in bytes */
privep->stalled = false;
else
{
mpsiz = (maxpacket << OTGFS_DOEPCTL_MPSIZ_SHIFT);
}
/* If the endpoint is already active don't change the endpoint control
* register.
*/
/* Enable the endpoint */
regaddr = STM32_OTGFS_DOEPCTL(privep->epphy);
regval = stm32_getreg(regaddr);
if (!depctl.b.usbactep)
{
regval &= ~(OTGFS_DOEPCTL_MPSIZ_MASK | OTGFS_DIEPCTL_EPTYP_MASK | OTGFS_DIEPCTL_TXFNUM_MASK);
regval |= mpsiz;
regval |= (eptype << OTGFS_DOEPCTL_EPTYP_SHIFT);
regval |= (eptype << OTGFS_DIEPCTL_TXFNUM_SHIFT);
regval |= (OTGFS_DOEPCTL_SD0PID | OTGFS_DOEPCTL_USBAEP);
stm32_putreg(regval, regaddr);
#warning "Missing logic"
return OK;
/* Save the endpoint configuration */
privep->ep.maxpacket = maxpacket;
privep->eptype = eptype;
privep->stalled = false;
}
/* Enable the interrupt for this endpoint */
regval = stm32_getreg(STM32_OTGFS_DAINTMSK);
regval |= OTGFS_DAINT_OEP(privep->epphy);
stm32_putreg(regval, STM32_OTGFS_DAINTMSK);
return OK;
}
/*******************************************************************************
@ -2568,40 +2609,82 @@ static int stm32_epoutconfigure(FAR struct usbdev_ep_s *privep, uint8_t eptype,
static int stm32_epinconfigure(FAR struct usbdev_ep_s *privep, uint8_t eptype,
uint16_t maxpacket)
{
FAR struct stm32_ep_s *privep = (FAR struct stm32_ep_s *)ep;
uint32_t daintmsk;
uint32_t mpsiz;
uint32_t regaddr;
uint32_t regval;
usbtrace(TRACE_EPCONFIGURE, privep->epphy);
DEBUGASSERT(desc->addr == ep->eplog);
/* Setup Endpoint Control Register */
/* For EP0, the packet size is encoded */
/* Reset the data toggles */
#warning "Missing logic"
/* Set the endpoint type */
switch (eptype)
if (privep->epphy == EP0)
{
case USB_EP_ATTR_XFER_CONTROL:
break;
case USB_EP_ATTR_XFER_ISOC:
break;
case USB_EP_ATTR_XFER_BULK:
break;
case USB_EP_ATTR_XFER_INT:
break;
DEBUGASSERT(eptype == USB_EP_ATTR_XFER_CONTROL);
/* Map the size in bytes to the encoded value in the register */
switch (maxpacket)
{
case 8:
mpsiz = OTGFS_DIEPCTL0_MPSIZ_8;
break;
case 16:
mpsiz = OTGFS_DIEPCTL0_MPSIZ_16;
break;
case 32:
mpsiz = OTGFS_DIEPCTL0_MPSIZ_32;
break;
case 64:
mpsiz = OTGFS_DIEPCTL0_MPSIZ_64;
break;
default:
udbg("Unsupported maxpacket: %d\n", maxpacket);
return -EINVAL;
}
}
#warning "Missing logic"
/* Reset endpoint status */
/* For other endpoints, the packet size is in bytes */
privep->stalled = false;
else
{
mpsiz = (maxpacket << OTGFS_DIEPCTL_MPSIZ_SHIFT);
}
/* Enable the endpoint */
/* If the endpoint is already active don't change the endpoint control
* register.
*/
#warning "Missing logic"
return OK;
regaddr = STM32_OTGFS_DIEPCTL(privep->epphy);
regval = stm32_getreg(regaddr);
if (!depctl.b.usbactep)
{
regval &= ~(OTGFS_DIEPCTL_MPSIZ_MASK | OTGFS_DIEPCTL_EPTYP_MASK | OTGFS_DIEPCTL_TXFNUM_MASK);
regval |= mpsiz;
regval |= (eptype << OTGFS_DIEPCTL_EPTYP_SHIFT);
regval |= (eptype << OTGFS_DIEPCTL_TXFNUM_SHIFT);
regval |= (OTGFS_DIEPCTL_SD0PID | OTGFS_DIEPCTL_USBAEP);
stm32_putreg(regval, regaddr);
/* Save the endpoint configuration */
privep->ep.maxpacket = maxpacket;
privep->eptype = eptype;
privep->stalled = false;
}
/* Enable the interrupt for this endpoint */
regval = stm32_getreg(STM32_OTGFS_DAINTMSK);
regval |= OTGFS_DAINT_IEP(privep->epphy);
stm32_putreg(regval, STM32_OTGFS_DAINTMSK);
return OK;
}
/*******************************************************************************