RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
Server: rpm5.org Name: Jeff Johnson
Root: /v/rpm/cvs Email: j...@rpm5.org
Module: rpm Date: 01-Aug-2014 19:48:23
Branch: rpm-5_4 Handle: 20140801174340202
Modified files: (Branch: rpm-5_4)
rpm CHANGES INSTALL
rpm/rpmio rpmsquirrel.c
Log:
- squirrel: test squirrel-3.0.6, add __argc/__argv handling.
Summary:
RevisionChanges Path
1.3501.2.417+1 -0 rpm/CHANGES
2.134.2.7 +3 -1 rpm/INSTALL
2.6.4.5 +58 -26 rpm/rpmio/rpmsquirrel.c
patch -p0 '@@ .'
Index: rpm/CHANGES
$ cvs diff -u -r1.3501.2.416 -r1.3501.2.417 CHANGES
--- rpm/CHANGES 26 Jul 2014 20:20:27 - 1.3501.2.416
+++ rpm/CHANGES 1 Aug 2014 17:43:40 - 1.3501.2.417
@@ -1,4 +1,5 @@
5.4.14 - 5.4.15:
+- jbj: squirrel: test squirrel-3.0.6, add __argc/__argv handling.
- jbj: config: switch from zlib - blake2p.
- jbj: config: switch from DSA - RSA/SHA1.
- jbj: macros: move an error check earlier.
@@ .
patch -p0 '@@ .'
Index: rpm/INSTALL
$ cvs diff -u -r2.134.2.6 -r2.134.2.7 INSTALL
--- rpm/INSTALL 19 Jul 2014 20:15:28 - 2.134.2.6
+++ rpm/INSTALL 1 Aug 2014 17:44:52 - 2.134.2.7
@@ -53,12 +53,14 @@
Linux KeyUtils optional 1.2 1.5.9
http://people.redhat.com/~dhowells/keyutils/
System libelf optional - - e.g.
http://www.mr511.de/software/english.html
CPUInfo optional r143r143https://launchpad.net/cpuinfo
+Rubyoptional 1.8.7 1.8.7 http://www.ruby-lang.org/
+Squirreloptional 2.2.5 3.0.6 http://www.squirrel-lang.org
--- - --- ---
-
[0] m4:NOTICE: Do not use GNU m4 1.4.10, it breaks GNU autoconf.
[1] db/sqlite: Berkeley-DB used by RPM.
- Building RPM against anything _EXCEPT_ db-6.0.30
+ Building RPM against anything _EXCEPT_ db-6.1.19
external Berkeley-DB is not officially supported
(but any version of Berkeley-DB since db-4.5.20 will work).
@@ .
patch -p0 '@@ .'
Index: rpm/rpmio/rpmsquirrel.c
$ cvs diff -u -r2.6.4.4 -r2.6.4.5 rpmsquirrel.c
--- rpm/rpmio/rpmsquirrel.c 16 Jul 2013 18:56:25 - 2.6.4.4
+++ rpm/rpmio/rpmsquirrel.c 1 Aug 2014 17:47:02 - 2.6.4.5
@@ -1,6 +1,8 @@
#include system.h
#include stdarg.h
+#define _RPMIOB_INTERNAL /* XXX necessary? */
+#include rpmiotypes.h
#include argv.h
#ifdef WITH_SQUIRREL
@@ -80,8 +82,8 @@
b = _free(b);
}
-#if defined(SQUIRREL_VERSION_NUMBER)
-static void rpmsquirrelStderr(HSQUIRRELVM v,const SQChar *s,...)
+#if defined(SQUIRREL_VERSION_NUMBER) SQUIRREL_VERSION_NUMBER = 300
+static void rpmsquirrelStderr(HSQUIRRELVM v, const SQChar *s,...)
{
va_list vl;
va_start(vl, s);
@@ -89,7 +91,6 @@
va_end(vl);
}
#endif
-
#endif
/* XXX FIXME: honor 0x800 in flags to use global interpreter */
@@ -115,43 +116,59 @@
SQInteger stacksize = 1024;
HSQUIRRELVM v = sq_open(stacksize);
int ac;
+int i;
if (av == NULL) av = _av;
ac = argvCount((ARGV_t)av);
+assert(v);
squirrel-I = v;
sq_setforeignptr(v, squirrel);
-#if defined(SQUIRREL_VERSION_NUMBER)
+
+#if defined(SQUIRREL_VERSION_NUMBER) SQUIRREL_VERSION_NUMBER = 300
sq_setprintfunc(v, rpmsquirrelPrint, rpmsquirrelStderr);
#else
sq_setprintfunc(v, rpmsquirrelPrint);
#endif
-sq_pushroottable(v);
+sqstd_seterrorhandlers(v);
+/* Initialize libraries. */
sqstd_register_bloblib(v);
sqstd_register_iolib(v);
-sqstd_register_systemlib(v);
sqstd_register_mathlib(v);
sqstd_register_stringlib(v);
+sqstd_register_systemlib(v);
-sqstd_seterrorhandlers(v);
-
+/* Register globals (using squirrelsh conventions). */
#ifdef NOTYET
-{int i;
- sq_pushroottable(v);
- sq_pushstring(v, ARGS, -1);
- sq_newarray(v, 0);
- for (i = 0, i ac; i++) {
- sq_pushstring(v, av[i], -1);
- sq_arrayappend(v, -2);
- }
- sq_createslot(v, -3);
- sq_pop(v, 1);
-}
+SetSqString(v, SHELL_VERSION,