]> andersk Git - test.git/commitdiff
Added support for building with toolchains that don't support symbol aliasing.
authorMarkus Gutschke <markus@shellinabox.com>
Wed, 29 Sep 2010 00:33:44 +0000 (00:33 +0000)
committerMarkus Gutschke <markus@shellinabox.com>
Wed, 29 Sep 2010 00:33:44 +0000 (00:33 +0000)
config.h
config.h.in
configure
configure.ac
demo/vt100.js
logging/logging.c
shellinabox/shell_in_a_box.js
shellinabox/vt100.js

index c2361668c21a60515b2b1e8cd5f7d37217980b8c..8af3437ae1ffba9d1bd720fa0b42b6778fae2dcd 100644 (file)
--- a/config.h
+++ b/config.h
@@ -1,6 +1,9 @@
 /* config.h.  Generated from config.h.in by configure.  */
 /* config.h.in.  Generated from configure.ac by autoheader.  */
 
+/* Define to 1 if you have support for symbol aliasing */
+#define HAVE_ATTRIBUTE_ALIAS 1
+
 /* Set if you want support for calling /bin/login */
 #define HAVE_BIN_LOGIN 1
 
 #define STDC_HEADERS 1
 
 /* Most recent revision number in the version control system */
-#define VCS_REVISION "228"
+#define VCS_REVISION "229"
 
 /* Version number of package */
 #define VERSION "2.10"
index 483b00e74abf29f2d882b867426c50fa11696029..9d5e516c2496c67164dc11987453d953d7b9533e 100644 (file)
@@ -1,5 +1,8 @@
 /* config.h.in.  Generated from configure.ac by autoheader.  */
 
+/* Define to 1 if you have support for symbol aliasing */
+#undef HAVE_ATTRIBUTE_ALIAS
+
 /* Set if you want support for calling /bin/login */
 #undef HAVE_BIN_LOGIN
 
index 1c9896e6b6c9480ddf611582d90b5f02eb7bf85a..20266484c7f4478301f6f6a560f4011d461120ee 100755 (executable)
--- a/configure
+++ b/configure
@@ -2328,7 +2328,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
-VCS_REVISION=228
+VCS_REVISION=229
 
 
 cat >>confdefs.h <<_ACEOF
@@ -10766,6 +10766,26 @@ if ac_fn_c_try_link "$LINENO"; then :
 
 $as_echo "#define HAVE_UPDWTMPX 1" >>confdefs.h
 
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+void x(void) { };
+             void y(void) __attribute__((alias("x")));
+int
+main ()
+{
+y();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+
+$as_echo "#define HAVE_ATTRIBUTE_ALIAS 1" >>confdefs.h
+
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
index 24a2e8a649115298dea11b3e5ef92cece5cf4c4c..20c2ee8970b08d1f92ad78b3fae2dcd56f597fa7 100644 (file)
@@ -2,7 +2,7 @@ AC_PREREQ(2.57)
 
 dnl This is the one location where the authoritative version number is stored
 AC_INIT(shellinabox, 2.10, markus@shellinabox.com)
-VCS_REVISION=228
+VCS_REVISION=229
 AC_SUBST(VCS_REVISION)
 AC_DEFINE_UNQUOTED(VCS_REVISION, "${VCS_REVISION}",
                    [Most recent revision number in the version control system])
@@ -71,6 +71,13 @@ AC_TRY_LINK([#include <utmpx.h>],
             [AC_DEFINE(HAVE_UPDWTMPX, 1,
                        Define to 1 if you have support for updwtmpx)])
 
+dnl Check if the compiler supports aliasing of symbols
+AC_TRY_LINK([void x(void) { };
+             void y(void) __attribute__((alias("x")));],
+            [y();],
+            [AC_DEFINE(HAVE_ATTRIBUTE_ALIAS, 1,
+                       Define to 1 if you have support for symbol aliasing)])
+
 dnl On some systems, calling /bin/login does not work. Disable the LOGIN
 dnl feature, if the user tells us that it does not do the right thing.
 AC_ARG_ENABLE(login,
index 0cab41f084ff6ad822b8de5e280f99f2f979e892..b96562690b12634b2631d513c344bb4e104c4ffa 100644 (file)
@@ -2402,7 +2402,7 @@ VT100.prototype.toggleCursorBlinking = function() {
 };
 
 VT100.prototype.about = function() {
-  alert("VT100 Terminal Emulator " + "2.10 (revision 228)" +
+  alert("VT100 Terminal Emulator " + "2.10 (revision 229)" +
         "\nCopyright 2008-2010 by Markus Gutschke\n" +
         "For more information check http://shellinabox.com");
 };
index 2a806c6402ff98b180e6353e3c0bce52cbf209e6..532b8facc8fa80b0b1b17c6ea0c308fd62f00b9e 100644 (file)
@@ -180,4 +180,15 @@ char *stringPrintf(char *buf, const char *fmt, ...) {
 }
 
 char *stringPrintfUnchecked(char *buf, const char *fmt, ...)
+#ifdef HAVE_ATTRIBUTE_ALIAS
   __attribute__((alias("stringPrintf")));
+#else
+{
+  va_list ap;
+  va_start(ap, fmt);
+  char *s = vStringPrintf(buf, fmt, ap);
+  va_end(ap);
+  return s;
+}
+#endif
+
index c9b288db76351364e5ad6269117ffd253b886c63..9496ec5b27c0ad13123393889e4b78c16d25c4e1 100644 (file)
@@ -358,7 +358,7 @@ ShellInABox.prototype.extendContextMenu = function(entries, actions) {
 };
 
 ShellInABox.prototype.about = function() {
-  alert("Shell In A Box version " + "2.10 (revision 228)" +
+  alert("Shell In A Box version " + "2.10 (revision 229)" +
         "\nCopyright 2008-2010 by Markus Gutschke\n" +
         "For more information check http://shellinabox.com" +
         (typeof serverSupportsSSL != 'undefined' && serverSupportsSSL ?
index 0cab41f084ff6ad822b8de5e280f99f2f979e892..b96562690b12634b2631d513c344bb4e104c4ffa 100644 (file)
@@ -2402,7 +2402,7 @@ VT100.prototype.toggleCursorBlinking = function() {
 };
 
 VT100.prototype.about = function() {
-  alert("VT100 Terminal Emulator " + "2.10 (revision 228)" +
+  alert("VT100 Terminal Emulator " + "2.10 (revision 229)" +
         "\nCopyright 2008-2010 by Markus Gutschke\n" +
         "For more information check http://shellinabox.com");
 };
This page took 0.064475 seconds and 5 git commands to generate.