This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See crosstool-NG for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

kconfig: Fixes to compile 1.15.2 on Cygwin


So configure/make doesn't work out of the box for crosstools-ng 1.15.2  on Cygwin, though I got it working after a bit of fiddling about.

End of the e-mail's a bunch of diffs to the makefiles, kconfig/nconf.c and kconfig/nconf.h, and I'll just kind of briefly describe each one.

1) The makefile needs the -lintl flags for the linker to be able to find the gettext stuff.
2) Same story, but with kconfig/Makefile.
3) ncurses does some weird #undef/#ifdef stuff to ESCDELAY if it sees it's in a Cygwin environment, makes it so that using ESCDELAY gives an "invalid lvalue on assignment" error. set_escdelay should work for all platforms
4) The Cygwin ncurses package doesn't make symlinks for the ncurses-related headers. Just adding the directory. Should still work fine on other platforms.


And now, diff files:


$ diff -du crosstool-ng-1.15.2.tar/Makefile crosstool-ng/Makefile
--- crosstool-ng-1.15.2.tar/Makefile    2012-06-29 16:23:20.935561600 -0600
+++ crosstool-ng/Makefile       2012-06-28 15:49:52.043639700 -0600
@@ -66,8 +66,8 @@
 export CPP             := gcc -E
 export CPPFLAGS        :=
 export CFLAGS          := -g -O2
-export LDFLAGS         :=
-export LIBS            := -lncursesw
+export LDFLAGS         := -lintl
+export LIBS            := -lncursesw -lintl
 export curses_hdr      := ncurses/ncurses.h
 export gettext         := y



$ diff -du crosstool-ng-1.15.2.tar/kconfig/Makefile crosstool-ng/kconfig/Makefile
--- crosstool-ng-1.15.2.tar/kconfig/Makefile    2012-05-08 15:33:56.000000000 -0600
+++ crosstool-ng/kconfig/Makefile       2012-06-28 15:49:30.801392100 -0600
@@ -7,11 +7,11 @@

 # Build flags
 CFLAGS = -DCONFIG_=\"CT_\" -DPACKAGE="\"crosstool-NG $(VERSION)\""
-LDFLAGS =
+LDFLAGS = -lintl

 # Compiler flags to use gettext
 ifeq ($(gettext),)
-INTL_CFLAGS = -DKBUILD_NO_NLS
+INTL_CFLAGS = -DKBUILD_NO_NLS
 endif

 # Compiler and linker flags to use ncurses



$ diff -du crosstool-ng-1.15.2.tar/kconfig/nconf.c crosstool-ng/kconfig/nconf.c
--- crosstool-ng-1.15.2.tar/kconfig/nconf.c     2012-05-08 15:33:56.000000000 -0600
+++ crosstool-ng/kconfig/nconf.c        2012-06-29 11:41:59.113331700 -0600
@@ -1518,7 +1518,7 @@
        }

        notimeout(stdscr, FALSE);
-       ESCDELAY = 1;
+       set_escdelay(1);

        /* set btns menu */
        curses_menu = new_menu(curses_menu_items);



$ diff -du crosstool-ng-1.15.2.tar/kconfig/nconf.h crosstool-ng/kconfig/nconf.h
--- crosstool-ng-1.15.2.tar/kconfig/nconf.h     2012-05-08 15:33:56.000000000 -0600
+++ crosstool-ng/kconfig/nconf.h        2012-06-29 10:43:10.168472500 -0600
@@ -15,16 +15,16 @@
 #include <string.h>
 #include <unistd.h>
 #include <locale.h>
-#include <curses.h>
-#include <menu.h>
-#include <panel.h>
-#include <form.h>
+#include <ncurses/curses.h>
+#include <ncurses/menu.h>
+#include <ncurses/panel.h>
+#include <ncurses/form.h>

 #include <stdio.h>
 #include <time.h>
 #include <sys/time.h>

-#include "ncurses.h"
+#include "ncurses/ncurses.h"

 #define max(a, b) ({\
                typeof(a) _a = a;\




Cheers,

Francis




--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]