[CVS] RPM: rpm-5_4: rpm/ configure.ac rpm/js/ Makefile.am rpmjs45.cpp ...
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: 10-Jul-2017 22:11:23 Branch: rpm-5_4 Handle: 2017071020112201 Modified files: (Branch: rpm-5_4) rpm configure.ac rpm/js Makefile.am rpmjs45.cpp rpm/js/src Makefile.am rpm/rpmio Makefile.am rpmjss.cpp rpmjss.h Log: - rpmjss: permit --without-mozjs builds (default). Summary: RevisionChanges Path 2.472.2.177 +5 -1 rpm/configure.ac 1.44.2.18 +4 -20 rpm/js/Makefile.am 1.1.2.10+0 -1 rpm/js/rpmjs45.cpp 1.1.2.6 +8 -30 rpm/js/src/Makefile.am 1.293.2.106 +6 -20 rpm/rpmio/Makefile.am 1.1.2.4 +20 -11 rpm/rpmio/rpmjss.cpp 1.1.2.7 +1 -0 rpm/rpmio/rpmjss.h patch -p0 <<'@@ .' Index: rpm/configure.ac $ cvs diff -u -r2.472.2.176 -r2.472.2.177 configure.ac --- rpm/configure.ac 10 Jul 2017 09:39:54 - 2.472.2.176 +++ rpm/configure.ac 10 Jul 2017 20:11:22 - 2.472.2.177 @@ -3981,19 +3981,23 @@ #AC_LANG_POP(C++) WITH_SPIDERMONKEY_SUBDIR="" +WITH_MOZJS_CXXFLAGS="" AC_LANG_PUSH(C++) RPM_CHECK_LIB( [MozJS (mozjs)], [mozjs], [mozjs], [_fini], [jsapi.h], -[no,internal:none], [js:include:extract], +[no,internal:none], [js:include:src], [ if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then WITH_SPIDERMONKEY_SUBDIR="js/src" AC_DEFINE(HAVE_JSAPI_H, 1, [Define to 1 if you have ]) AC_DEFINE(HAVE_LIBMOZJS, 1, [Define to 1 if you have the 'mozjs' library (-lmozjs).]) + WITH_MOZJS_CXXFLAGS="-DEXPORT_JS_API -DDLL_PREFIX='\"lib\"' -DDLL_SUFFIX='\".so\"' -DMOZILLA_CLIENT -D'moz_xmalloc(_len)=malloc(_len)' -include \${top_srcdir}/\$(WITH_MOZJS_SUBDIR)/extract/js/src/js/src/js-confdefs.h -I\${top_srcdir}/\$(WITH_MOZJS_SUBDIR)/extract/js/src -I\${top_srcdir}/\$(WITH_MOZJS_SUBDIR)/extract/mfbt \$(WITH_MOZJS_CPPFLAGS)" + fi ], []) AC_LANG_POP(C++) +AC_SUBST(WITH_MOZJS_CXXFLAGS) AC_SUBST(WITH_SPIDERMONKEY_SUBDIR) dnl # Google V8 @@ . patch -p0 <<'@@ .' Index: rpm/js/Makefile.am $ cvs diff -u -r1.44.2.17 -r1.44.2.18 Makefile.am --- rpm/js/Makefile.am10 Jul 2017 10:09:25 - 1.44.2.17 +++ rpm/js/Makefile.am10 Jul 2017 20:11:22 - 1.44.2.18 @@ -33,7 +33,7 @@ @WITH_FILE_CPPFLAGS@ \ @WITH_GPSEE_CPPFLAGS@ \ @WITH_LUA_CPPFLAGS@ \ - @WITH_MOZJS185_CPPFLAGS@ \ + @WITH_MOZJS_CPPFLAGS@ \ @WITH_NEON_CPPFLAGS@ \ @WITH_POPT_CPPFLAGS@ \ @WITH_SYCK_CPPFLAGS@ \ @@ -118,25 +118,9 @@ rpmjs45shim.cpp \ rpmjs45.cpp #${moz_builddir}/shell/Unified_cpp_js_src_shell0.cpp -rpmjs45_CPPFLAGS = \ - -DEXPORT_JS_API \ - -DDLL_PREFIX='"lib"' -DDLL_SUFFIX='".so"' \ - -DMOZILLA_CLIENT \ - -D'moz_xmalloc(_len)=malloc(_len)' \ - -I${moz_srcdir}/mfbt \ - -I${moz_srcdir}/js/src \ - -I${srcdir}/include \ - -I../rpmio \ - -include ${moz_srcdir}/js/src/js/src/js-confdefs.h \ - -pthread \ - -fPIC \ - -O3 -#rpmjs_CXXFLAGS = \ -#-std=gnu++0x \ -#-fno-rtti -rpmjs45_LDADD = \ - ${builddir}/src/libmozjs.la \ - $(RPMIO_LDADD_COMMON) +rpmjs45_CXXFLAGS = $(WITH_MOZJS_CXXFLAGS) -I../rpmio -fPIC -O3 +rpmjs45_LDADD = $(WITH_MOZJS_LIBS) +rpmjs45_LDFLAGS = $(WITH_MOZJS_LDFLAGS) foo: rpmjs45 ./rpmjs45 -f rpmjss.inp @@ . patch -p0 <<'@@ .' Index: rpm/js/rpmjs45.cpp $ cvs diff -u -r1.1.2.9 -r1.1.2.10 rpmjs45.cpp --- rpm/js/rpmjs45.cpp10 Jul 2017 10:09:25 - 1.1.2.9 +++ rpm/js/rpmjs45.cpp10 Jul 2017 20:11:22 - 1.1.2.10 @@ -543,7 +543,6 @@ #include /*==*/ -#define N_(_str)(_str) struct poptOption rpmjssIPoptTable[] = { { "allow", '\0', POPT_BIT_SET, &_jss.flags, RPMJSS_FLAGS_ALLOW, @@ . patch -p0 <<'@@ .' Index: rpm/js/src/Makefile.am $ cvs diff -u -r1.1.2.5 -r1.1.2.6 Makefile.am --- rpm/js/src/Makefile.am8 Jul 2017 20:32:11 - 1.1.2.5 +++ rpm/js/src/Makefile.am10 Jul 2017 20:11:23 - 1.1.2
[CVS] RPM: rpm-5_4: rpm/rpmio/ rpmjss.cpp
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: 10-Jul-2017 17:11:37 Branch: rpm-5_4 Handle: 2017071015113700 Modified files: (Branch: rpm-5_4) rpm/rpmio rpmjss.cpp Log: - rpmjss: permit global/multiple interpreters, add _rpmjssI_init and %_jssI_init Summary: RevisionChanges Path 1.1.2.3 +15 -12 rpm/rpmio/rpmjss.cpp patch -p0 <<'@@ .' Index: rpm/rpmio/rpmjss.cpp $ cvs diff -u -r1.1.2.2 -r1.1.2.3 rpmjss.cpp --- rpm/rpmio/rpmjss.cpp 10 Jul 2017 14:21:59 - 1.1.2.2 +++ rpm/rpmio/rpmjss.cpp 10 Jul 2017 15:11:37 - 1.1.2.3 @@ -1208,6 +1208,8 @@ { be += sprintf(be, "%25s: %"#_fmt"\n", #_foo, jss->_foo); } #define XPRINT(_fmt, _foo) if (jss->_foo) PRINT(_fmt, _foo) + if (jss->av) + argvPrint(__FUNCTION__, (ARGV_t)jss->av, NULL); PRINT(x, flags); XPRINT(s, Ifile); @@ -1305,37 +1307,39 @@ RPMIOPOOL_INTERP_MODULE(jss) -#ifdef NOTYET static const char * _rpmjssI_init = "\ -print('_rpmjssI_init');\n\ -version();\n\ +print('-- _rpmjssI_init --');\n\ +help(version);\n\ +version(185); putstr('version: '); print(version());\n\ +help(options);\n\ +options('strict'); putstr('options: '); print(options('strict'));\ "; -#endif rpmjss rpmjssNew(char ** av, uint32_t flags) { static const char * _av[] = { (char *) "rpmjss", NULL }; int ac = argvCount((ARGV_t)av); int initialize (!(flags & 0x8000) || _rpmjssI == NULL); -SPEW("==> %s(%p[%u], 0x%x)\n", __FUNCTION__, av, ac, flags); rpmjss jss = -#ifdef NOTYET (flags & 0x8000) ? rpmjssI() : -#endif rpmjssGetPool(_rpmjssPool); if (av == NULL) av = (char **) _av; /* Parse JSShell options. */ if (initialize) { + + /* XXX TODO: global interpreter defauls from %{_jssI_config}. */ + rpmRC rc = rpmjssSetup(jss, ac, av, flags); (void)rc; - /* Initialize JSShell interpreter. */ - JSI_t I = (JSI_t) mozInit(jss); - jss->I = I; + /* Initialize JSShell interpreter (if not already). */ + if (jss->I == NULL) { + JSI_t I = (JSI_t) mozInit(jss); + jss->I = I; + } -#ifdef NOTYET /* XXX TODO: rpmjssInfo() spewage on first open. */ static const char _jssI_init[] = "%{?_jssI_init}"; @@ -1346,7 +1350,6 @@ (void) rpmjssRun(jss, s, NULL); s = _free(s); -#endif } return rpmjssLink(jss); @@ . __ RPM Package Managerhttp://rpm5.org CVS Sources Repositoryrpm-cvs@rpm5.org
[CVS] RPM: rpm-5_4: rpm/rpmio/ rpmpython.c
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: 10-Jul-2017 16:25:48 Branch: rpm-5_4 Handle: 2017071014254800 Modified files: (Branch: rpm-5_4) rpm/rpmio rpmpython.c Log: - rpmpython: add SPEW(). Summary: RevisionChanges Path 2.16.2.15 +9 -10 rpm/rpmio/rpmpython.c patch -p0 <<'@@ .' Index: rpm/rpmio/rpmpython.c $ cvs diff -u -r2.16.2.14 -r2.16.2.15 rpmpython.c --- rpm/rpmio/rpmpython.c 26 May 2017 20:49:23 - 2.16.2.14 +++ rpm/rpmio/rpmpython.c 10 Jul 2017 14:25:48 - 2.16.2.15 @@ -24,6 +24,11 @@ #include "debug.h" +int _rpmpython_debug = 0; +#define SPEW(_fmt, ...) \ + if (_rpmpython_debug) \ + fprintf(stderr, _fmt, __VA_ARGS__) + static void rpmpythonFini(void * _python) { rpmpython python = (rpmpython) _python; @@ -34,8 +39,6 @@ python->I = NULL; } -int _rpmpython_debug = 0; - #define rpmpythonDbug NULL #define rpmpythonInit NULL RPMIOPOOL_INTERP_MODULE(python) @@ -124,8 +127,7 @@ rpmpython python = (flags & 0x8000) ? rpmpythonI() : rpmpythonGetPool(_rpmpythonPool); -if (_rpmpython_debug) -fprintf(stderr, "==> %s(%p, %d) python %p\n", __FUNCTION__, av, flags, python); +SPEW("==> %s(%p, %d) python %p\n", __FUNCTION__, av, flags, python); if (av == NULL) av = (char **) _av; @@ -145,8 +147,7 @@ const char * s = rpmExpand(_rpmpythonI_init, _pythonI_init, NULL); int ac = argvCount((ARGV_t)av); (void) PySys_SetArgv(ac, (char **)av); -if (_rpmpython_debug) -fprintf(stderr, "==\n%s\n==\n", s); +SPEW("==\n%s\n==\n", s); (void) rpmpythonRun(python, s, NULL); s = _free(s); } @@ -159,8 +160,7 @@ { rpmRC rc = RPMRC_FAIL; -if (_rpmpython_debug) -fprintf(stderr, "==> %s(%p,%s)\n", __FUNCTION__, python, fn); +SPEW("==> %s(%p,%s)\n", __FUNCTION__, python, fn); if (python == NULL) python = rpmpythonI(); @@ -207,8 +207,7 @@ { rpmRC rc = RPMRC_FAIL; -if (_rpmpython_debug) -fprintf(stderr, "==> %s(%p,%s,%p)\n", __FUNCTION__, python, str, resultp); +SPEW("==> %s(%p,%s,%p)\n", __FUNCTION__, python, str, resultp); if (python == NULL) python = rpmpythonI(); @@ . __ RPM Package Managerhttp://rpm5.org CVS Sources Repositoryrpm-cvs@rpm5.org
[CVS] RPM: rpm-5_4: rpm/rpmio/ rpmjss.cpp rpmjss.h
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: 10-Jul-2017 16:22:00 Branch: rpm-5_4 Handle: 2017071014215900 Modified files: (Branch: rpm-5_4) rpm/rpmio rpmjss.cpp rpmjss.h Log: - rpmjss: parse options/arguments. Summary: RevisionChanges Path 1.1.2.2 +534 -163 rpm/rpmio/rpmjss.cpp 1.1.2.6 +5 -5 rpm/rpmio/rpmjss.h patch -p0 <<'@@ .' Index: rpm/rpmio/rpmjss.cpp $ cvs diff -u -r1.1.2.1 -r1.1.2.2 rpmjss.cpp --- rpm/rpmio/rpmjss.cpp 10 Jul 2017 09:42:51 - 1.1.2.1 +++ rpm/rpmio/rpmjss.cpp 10 Jul 2017 14:21:59 - 1.1.2.2 @@ -366,8 +366,10 @@ // Start the engine. if (rpmjss_nopens++ == 0) { - MaybeOverrideOutFileFromEnv("JS_STDERR", stderr, &gErrFile); - MaybeOverrideOutFileFromEnv("JS_STDOUT", stdout, &gOutFile); + if (gErrFile == NULL) + MaybeOverrideOutFileFromEnv("JS_STDERR", stderr, &gErrFile); + if (gOutFile == NULL) + MaybeOverrideOutFileFromEnv("JS_STDOUT", stdout, &gOutFile); #ifdef JS_CODEGEN_X86 if (!(jss->xf & XF_FPU)) @@ -411,6 +413,7 @@ JSRuntime * rt = JS_NewRuntime(_maxbytes, nurseryBytes); assert(rt); +assert(I->rt == NULL); I->rt = rt; #ifdef DYING @@ -462,6 +465,7 @@ JSContext * cx = NewContext(rt); assert(cx); +assert(I->cx == NULL); I->cx = cx; #ifdef DYING JS_SetContextPrivate(cx, (void *)jss); @@ -494,6 +498,7 @@ options.setVersion(JSVERSION_DEFAULT); glob = NewGlobalObject(cx, options, _principals); assert(glob); +assert(I->global == NULL); I->global = glob; JSAutoCompartment ac(cx, glob); @@ -568,323 +573,365 @@ static struct JSIO_s _mozjs45 = { mozFini, mozInit, mozRun }; JSIO_t mozjs45 = &_mozjs45; +#ifdef DYING /*==*/ struct rpmjss_s _jss; rpmjss jss = &_jss; +#endif /*==*/ -struct poptOption rpmjssIPoptTable[] = { +static rpmjssFlags rpmjssFlagsDefault = (rpmjssFlags) ( +RPMJSS_FLAGS_RELIMIT | +RPMJSS_FLAGS_JIT | +RPMJSS_FLAGS_STRICT | +0 +); + +static rpmjssIonFlags rpmjssIonFlagsDefault = (rpmjssIonFlags) ( +ION_SCALAR_REPLACEMENT | +ION_GVN | +ION_LICM | +ION_EDGECASE_ANALYSIS | +ION_RANGE_ANALYSIS | +ION_INLINING | +ION_OSR | +ION_LIMIT_SCRIPT_SIZE | +ION_OFFTHREAD_COMPILE | +0 +); + +static rpmjssXFlags rpmjssXFlagsDefault = (rpmjssXFlags) ( +XF_BASELINE | +XF_ION | +XF_ASMJS | +XF_NATIVE_REGEXP | +XF_UNBOXED_OBJECTS | +XF_CACHE_PER_PROCESS | +XF_FPU | +XF_SSE3 | +XF_SSE4 | +XF_THREADS | +XF_GGC | +XF_CGC | +XF_INCREMENTAL_GC | +0 +); + +/*==*/ +static rpmRC +rpmjssInitPopt(rpmjss jss, int ac, char * const* av) +{ + + struct poptOption rpmjssIPoptTable[] = { { "allow", '\0', POPT_BIT_SET, - &_jss.flags, RPMJSS_FLAGS_ALLOW, + &jss->flags, RPMJSS_FLAGS_ALLOW, N_("Allow (read-only) access to caller's environment"), NULL }, { "cache", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE, - &_jss.flags, RPMJSS_FLAGS_NOCACHE, + &jss->flags, RPMJSS_FLAGS_NOCACHE, N_("Disables compiler caching via JSScript XDR serialization"), NULL }, { "loadrc", '\0', POPT_BIT_SET, - &_jss.flags, RPMJSS_FLAGS_LOADRC, + &jss->flags, RPMJSS_FLAGS_LOADRC, N_("Load RC file for interpreter based on script filename."), NULL }, { "warn", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE, - &_jss.flags, RPMJSS_FLAGS_NOWARN, + &jss->flags, RPMJSS_FLAGS_NOWARN, N_("Do not report warnings"), NULL }, { "relimit", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE, - &_jss.flags, RPMJSS_FLAGS_RELIMIT, + &jss->flags, RPMJSS_FLAGS_RELIMIT, N_("Do not limit regexps to n^3 levels of backtracking"), NULL }, { "jit", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE, - &_jss.flags, RPMJSS_FLAGS_JIT, + &jss->flags, RPMJSS_FLAGS_JIT, N_("Disable nanojit"), NULL }, { "strict", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE, - &_jss.flags, RPMJSS_FLAGS_STRICT, + &jss->flags, RPMJSS_FLAGS_STRICT, N_("Disable Strict
[CVS] RPM: rpm-5_4: rpm/js/ Makefile.am rpmjs45.cpp rpmjs45shim.cpp
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: 10-Jul-2017 12:09:25 Branch: rpm-5_4 Handle: 2017071010092500 Modified files: (Branch: rpm-5_4) rpm/js Makefile.am rpmjs45.cpp rpmjs45shim.cpp Log: - rpmjs: haul out the trash. Summary: RevisionChanges Path 1.44.2.17 +9 -40 rpm/js/Makefile.am 1.1.2.9 +9 -0 rpm/js/rpmjs45.cpp 1.1.2.2 +10 -0 rpm/js/rpmjs45shim.cpp patch -p0 <<'@@ .' Index: rpm/js/Makefile.am $ cvs diff -u -r1.44.2.16 -r1.44.2.17 Makefile.am --- rpm/js/Makefile.am9 Jul 2017 16:11:12 - 1.44.2.16 +++ rpm/js/Makefile.am10 Jul 2017 10:09:25 - 1.44.2.17 @@ -90,7 +90,7 @@ EXTRA_PROGRAMS = rpmjs45 rpmjs52 v8 noinst_PROGRAMS =tjs -moz_srcdir = ${srcdir}/mozilla-release/js/src +moz_srcdir = ${srcdir}/extract #moz_builddir = ${builddir}/platform/x86_64/linux/build moz_builddir = ${builddir}/src @@ -120,54 +120,23 @@ #${moz_builddir}/shell/Unified_cpp_js_src_shell0.cpp rpmjs45_CPPFLAGS = \ -DEXPORT_JS_API \ - -DJS_HAS_CTYPES \ -DDLL_PREFIX='"lib"' -DDLL_SUFFIX='".so"' \ - -fPIC \ -DMOZILLA_CLIENT \ -D'moz_xmalloc(_len)=malloc(_len)' \ - -I${moz_srcdir}/js/src/shell \ + -I${moz_srcdir}/mfbt \ -I${moz_srcdir}/js/src \ - -I${moz_srcdir}/dist/include \ - -I${moz_srcdir}/shell \ - -I${moz_srcdir} \ - -I${moz_builddir} \ -I${srcdir}/include \ - -I${srcdir} \ - -I${builddir} \ -I../rpmio \ - -include ${top_srcdir}/config.h \ - -include js-confdefs.h \ - -include js/RequiredDefines.h \ - -fno-tree-vrp \ - -fno-strict-aliasing \ - -fno-delete-null-pointer-checks \ - -Wsign-compare \ - -Wtype-limits \ - -Wcast-align \ - -Wno-invalid-offsetof \ - -ffunction-sections \ - -fdata-sections \ - -fno-exceptions \ - -fno-math-errno \ + -include ${moz_srcdir}/js/src/js/src/js-confdefs.h \ -pthread \ - -DTRIMMER \ - -freorder-blocks \ - -O3 \ - -fomit-frame-pointer \ - -DRPMJSS_SELF_TEST -rpmjs_CXXFLAGS = \ - -std=gnu++0x \ - -fno-rtti + -fPIC \ + -O3 +#rpmjs_CXXFLAGS = \ +#-std=gnu++0x \ +#-fno-rtti rpmjs45_LDADD = \ - -L${abs_top_builddir}/js/src -lmozjs \ - -L${abs_top_builddir}/js/mozilla-release/js/src/dist/sdk/lib \ - -lmozglue -lmemory \ - -lm -ldl -lffi -licui18n -licuuc -licudata \ + ${builddir}/src/libmozjs.la \ $(RPMIO_LDADD_COMMON) -rpmjs45_LDFLAGS = \ - -R${abs_top_builddir}/js/mozilla-release/js/src/dist/sdk/lib -#rpmjs45_CPPFLAGS = -include /usr/include/mozjs-45/js/RequiredDefines.h -I/usr/include/mozjs-45 -fPIC -DRPMJSS_SELF_TEST -#rpmjs45_LDADD = -L/usr/lib64 -lmozjs-45 foo: rpmjs45 ./rpmjs45 -f rpmjss.inp @@ . patch -p0 <<'@@ .' Index: rpm/js/rpmjs45.cpp $ cvs diff -u -r1.1.2.8 -r1.1.2.9 rpmjs45.cpp --- rpm/js/rpmjs45.cpp9 Jul 2017 16:59:19 - 1.1.2.8 +++ rpm/js/rpmjs45.cpp10 Jul 2017 10:09:25 - 1.1.2.9 @@ -1,3 +1,12 @@ +#pragma GCC diagnostic ignored "-Winvalid-offsetof" +#pragma GCC diagnostic ignored "-Wsuggest-attribute=const" +#pragma GCC diagnostic ignored "-Wsuggest-attribute=pure" +#pragma GCC diagnostic ignored "-Wextra" + +#include "system.h" +#undef ioctl +#define rpl_ioctl ioctl + /*==*/ #include "shell/OSObject.cpp" /*==*/ @@ . patch -p0 <<'@@ .' Index: rpm/js/rpmjs45shim.cpp $ cvs diff -u -r1.1.2.1 -r1.1.2.2 rpmjs45shim.cpp --- rpm/js/rpmjs45shim.cpp8 Jul 2017 08:14:42 - 1.1.2.1 +++ rpm/js/rpmjs45shim.cpp10 Jul 2017 10:09:25 - 1.1.2.2 @@ -1,3 +1,13 @@ +#pragma GCC diagnostic ignored "-Winvalid-offsetof" +#pragma GCC diagnostic ignored "-Wsuggest-attribute=const" +#pragma GCC diagnostic ignored "-Wsuggest-attribute=pure" +#pragma GCC diagnostic ignored "-Wextra" +#pragma GCC diagnostic ignored "-Wunused-result" + +#include "system.h" +#undef ioctl +#define rpl_ioctl ioctl + #include "mfbt/Unif
[CVS] RPM: rpm-5_4: rpm/lib/ poptALL.c psm.c
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: 10-Jul-2017 11:44:00 Branch: rpm-5_4 Handle: 201707100944 Modified files: (Branch: rpm-5_4) rpm/lib poptALL.c psm.c Log: - rpmjss: replace rpmjs with rpmjss. Summary: RevisionChanges Path 2.144.2.20 +4 -4 rpm/lib/poptALL.c 2.399.2.29 +2 -2 rpm/lib/psm.c patch -p0 <<'@@ .' Index: rpm/lib/poptALL.c $ cvs diff -u -r2.144.2.19 -r2.144.2.20 poptALL.c --- rpm/lib/poptALL.c 20 May 2017 19:21:07 - 2.144.2.19 +++ rpm/lib/poptALL.c 10 Jul 2017 09:44:00 - 2.144.2.20 @@ -25,7 +25,7 @@ #include #include -#include +#include #include #include @@ -451,7 +451,7 @@ rpmcliFini(poptContext optCon) { extern rpmioPool _rpmjniPool; -extern rpmioPool _rpmjsPool; +extern rpmioPool _rpmjssPool; extern rpmioPool _headerPool; extern const char * evr_tuple_order; extern const char * evr_tuple_match; @@ -468,8 +468,8 @@ /* Realease (and dereference) embedded interpreter global objects first. */ _rpmjniI = rpmjniFree(_rpmjniI); _rpmjniPool = rpmioFreePool(_rpmjniPool); -_rpmjsI = rpmjsFree(_rpmjsI); -_rpmjsPool = rpmioFreePool(_rpmjsPool); +_rpmjssI = rpmjssFree(_rpmjssI); +_rpmjssPool = rpmioFreePool(_rpmjssPool); RPMIOPOOL_INTERP_FREE(ruby) RPMIOPOOL_INTERP_FREE(mdb) @@ . patch -p0 <<'@@ .' Index: rpm/lib/psm.c $ cvs diff -u -r2.399.2.28 -r2.399.2.29 psm.c --- rpm/lib/psm.c 1 Jun 2017 18:38:24 - 2.399.2.28 +++ rpm/lib/psm.c 10 Jul 2017 09:44:00 - 2.399.2.29 @@ -16,7 +16,7 @@ #include #include #include -#include +#include #include #include #include @@ -645,7 +645,7 @@ #endif #if defined(WITH_MOZJS) if (!strcmp(Phe->p.argv[0], "")) { - RPMIOPOOL_INTERP_RUN(js) + RPMIOPOOL_INTERP_RUN(jss) } else #endif #if defined(WITH_MRBEMBED) @@ . __ RPM Package Managerhttp://rpm5.org CVS Sources Repositoryrpm-cvs@rpm5.org
[CVS] RPM: rpm-5_4: rpm/rpmio/ rpmev.c rpmjss.cpp
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: 10-Jul-2017 11:42:51 Branch: rpm-5_4 Handle: 2017071009425100 Added files: (Branch: rpm-5_4) rpm/rpmio rpmev.c rpmjss.cpp Log: - create. Summary: RevisionChanges Path 1.1.2.1 +649 -0 rpm/rpmio/rpmev.c 1.1.2.1 +996 -0 rpm/rpmio/rpmjss.cpp patch -p0 <<'@@ .' Index: rpm/rpmio/rpmev.c $ cvs diff -u -r0 -r1.1.2.1 rpmev.c --- /dev/null 2017-07-10 11:35:46.0 +0200 +++ rpmev.c 2017-07-10 11:42:51.797005547 +0200 @@ -0,0 +1,649 @@ +#include "system.h" +#include + +#if defined(WITH_LIBEV) + +#if defined(HAVE_EV_H) +# include +#endif + +#else/* WITH_LIBEV */ + +/* XXX stub in enough to include rpmev.h */ +#define EV_P_ void * loop, +struct ev_watcher { +int active; +int pending; +int priority; +void * data; +void (*cb)(EV_P_ void *w, int revents); +}; + +union ev_any_watcher +{ +struct ev_watcher w; +}; + +#endif /* WITH_LIBEV */ + +#include +#include + +#define _RPMEV_INTERNAL +#include + +#include "debug.h" + +int _rpmev_debug = -1; + +#define SPEW(_fmt, ...) \ +if (_rpmev_debug || _rpmio_debug) \ + fprintf(stderr, _fmt, __VA_ARGS__) + +/*==*/ +unsigned rpmioEV = 0; +struct poptOption rpmioEVTable[] = { +#if defined(WITH_LIBEV) + { "read", '\0', POPT_BIT_SET, &rpmioEV, EV_READ, +N_("read"), N_("EV_READ") }, + { "write", '\0', POPT_BIT_SET, &rpmioEV, EV_WRITE, +N_("write"), N_("EV_WRITE") }, + { "internal", '\0', POPT_BIT_SET, &rpmioEV, EV__IOFDSET, +N_("internal"), N_("EV__IOFDSET") }, + { "timer", '\0', POPT_BIT_SET, &rpmioEV, EV_TIMER, +N_("timer"), N_("EV_TIMER") }, + { "periodic", '\0', POPT_BIT_SET, &rpmioEV, EV_PERIODIC, +N_("periodic"), N_("EV_PERIODIC") }, + { "signal", '\0', POPT_BIT_SET, &rpmioEV, EV_SIGNAL, +N_("signal"), N_("EV_SIGNAL") }, + { "child", '\0', POPT_BIT_SET, &rpmioEV, EV_CHILD, +N_("child"), N_("EV_CHILD") }, + { "stat", '\0', POPT_BIT_SET, &rpmioEV, EV_STAT, +N_("stat"), N_("EV_STAT") }, + { "idle", '\0', POPT_BIT_SET, &rpmioEV, EV_IDLE, +N_("idle"), N_("EV_IDLE") }, + { "prepare", '\0', POPT_BIT_SET,&rpmioEV, EV_PREPARE, +N_("prepare"), N_("EV_PREPARE") }, + { "check", '\0', POPT_BIT_SET, &rpmioEV, EV_CHECK, +N_("check"), N_("EV_CHECK") }, + { "embed", '\0', POPT_BIT_SET, &rpmioEV, EV_EMBED, +N_("embed"), N_("EV_EMBED") }, + { "fork", '\0', POPT_BIT_SET, &rpmioEV, EV_FORK, +N_("fork"), N_("EV_FORK") }, + { "cleanup", '\0', POPT_BIT_SET,&rpmioEV, EV_CLEANUP, +N_("cleanup"), N_("EV_CLEANUP") }, + { "async", '\0', POPT_BIT_SET, &rpmioEV, EV_ASYNC, +N_("async"), N_("EV_ASYNC") }, + { "custom", '\0', POPT_BIT_SET, &rpmioEV, EV_CUSTOM, +N_("custom"), N_("EV_CUSTOM") }, + { "error", '\0', POPT_BIT_SET, &rpmioEV, EV_ERROR, +N_("error"), N_("EV_ERROR") }, +#endif /* WITH_LIBEV */ + POPT_TABLEEND +}; + +unsigned rpmioEVFLAG = 0; +struct poptOption rpmioEVFLAGTable[] = { +#if defined(WITH_LIBEV) + { "env", '\0', POPT_BIT_CLR|POPT_ARGFLAG_TOGGLE,&rpmioEVFLAG, EVFLAG_NOENV, +N_("env"), N_("EVFLAG_NOENV") }, + { "forkcheck", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE, &rpmioEVFLAG, EVFLAG_FORKCHECK, +N_("forkcheck"), N_("EVFLAG_FORKCHECK") }, + { "inotify", '\0', POPT_BIT_CLR|POPT_ARGFLAG_TOGGLE, &rpmioEVFLAG, EVFLAG_NOINOTIFY, +N_("inotify"), N_("EVFLAG_NOINOTIFY") }, + { "signalfd", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE, &rpmioEVFLAG, EVFLAG_SIGNALFD, +N_("signalfd"), N_("EVFLAG_SIGNALFD") }, + { "sigmask", '\0', POPT_BIT_CLR|POPT_ARGFLAG_TOGGLE, &rpmioEVFLAG, EVFLAG_NOSIGMASK, +N_("sigmask"), N_("EVFLAG_NOSIGMASK") }, +#endif /* WITH_LIBEV */ + POPT_TABLEEND +}; + +unsigned rpmioEVBACKEND = 0; +struct poptOption rpmioEVBACKENDTable[] = { +#if defined(WITH_LIBEV) + { "select", '\0', POPT_BIT_SET, &rpmioEVBACKEND, EVBACKEND_SELECT, +N_("select"), N_("EVBACKEND_SELECT") }, + { "poll", '\0', POPT_BIT
[CVS] RPM: rpm-5_4: rpm/ configure.ac
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: 10-Jul-2017 11:39:54 Branch: rpm-5_4 Handle: 2017071009395400 Modified files: (Branch: rpm-5_4) rpm configure.ac Log: - rpmjs: AutoFU for mozjs. Summary: RevisionChanges Path 2.472.2.176 +97 -30 rpm/configure.ac patch -p0 <<'@@ .' Index: rpm/configure.ac $ cvs diff -u -r2.472.2.175 -r2.472.2.176 configure.ac --- rpm/configure.ac 13 Jun 2017 22:25:22 - 2.472.2.175 +++ rpm/configure.ac 10 Jul 2017 09:39:54 - 2.472.2.176 @@ -332,7 +332,7 @@ rpm_CFLAGS_ADD([-Wsuggest-attribute=pure],[RPM_CFLAGS]) rpm_CFLAGS_ADD([-Wno-unused-but-set-variable], [RPM_CFLAGS]) dnl # -fno-delete-null-pointer as the kernel does http://patchwork.kernel.org/patch/36060/ - rpm_CFLAGS_ADD([-fno-delete-null-pointer-checks], [RPM_CFLAGS]) + rpm_CPPFLAGS_ADD([-fno-delete-null-pointer-checks], [RPM_CPPFLAGS]) rpm_CFLAGS_ADD([-Wbool-compare],[RPM_CFLAGS]) fi dnl # rpm_CFLAGS_ADD([-Wdouble-promotion],[RPM_CFLAGS]) @@ -449,6 +449,18 @@ dnl # rpm_CFLAGS_ADD([-fno-protect-parens],[RPM_CFLAGS]) dnl # rpm_CFLAGS_ADD([-fstack-arrays],[RPM_CFLAGS]) +dnl # build RPM with Mozilla C++ flags (GCC only) + rpm_CXXFLAGS_ADD([-std=gnu++0x], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-fno-rtti], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-fno-tree-vrp], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-fno-strict-aliasing], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-ffunction-sections], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-fdata-sections], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-fno-exceptions], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-fno-math-errno], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-freorder-blocks], [RPM_CXXFLAGS]) + rpm_CXXFLAGS_ADD([-fomit-frame-pointer], [RPM_CXXFLAGS]) + dnl # build RPM instrumented for extra optimization/security (GCC only) dnl # --- other optimizations rpm_CFLAGS_ADD([-fexceptions], [RPM_CFLAGS]) @@ -3894,51 +3906,106 @@ ], []) AC_LANG_POP(C++) -dnl # JavaScript -WITH_JS_SUBDIR="" +dnl # Libicu18n/Libicuuc/Libicudata (for mozjs-45) +dnl # XXX FIXME: all the functions are versioned: _init will suffice. +RPM_CHECK_LIB( +[Libicu], [libicu], +[icui18n], [_init], [unicode/utypes.h], +[no,external:none], [], +[ +LIBS="$LIBS -licuuc -licudata" +], []) -WITH_SPIDERMONKEY_SUBDIR="" +dnl # Libffi (for mozjs-45) RPM_CHECK_LIB( -[MozJS (js-1.8.5)], [mozjs185], -[mozjs185], [JS_NewContext], [jsapi.h], -[no,external:none], [mozjs185:src:src], -[ if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then - WITH_SPIDERMONKEY_SUBDIR="$WITH_JS_SUBDIR/src" - else - WITH_JS_SUBDIR=js - fi +[Libffi], [libffi], +[ffi], [ffi_prep_cif], [ffi.h], +[no,external:none], [], +[ +AC_CHECK_FUNC(ffi_call) +AC_CHECK_FUNC(ffi_call_unix64) +AC_CHECK_FUNC(ffi_closure_alloc) +AC_CHECK_FUNC(ffi_closure_free) +AC_CHECK_FUNC(ffi_closure_unix64) +AC_CHECK_FUNC(ffi_closure_unix64_inner) +AC_CHECK_FUNC(ffi_java_ptrarray_to_raw) +AC_CHECK_FUNC(ffi_java_raw_call) +AC_CHECK_FUNC(ffi_java_raw_size) +AC_CHECK_FUNC(ffi_java_raw_to_ptrarray) +AC_CHECK_FUNC(ffi_prep_cif) +AC_CHECK_FUNC(ffi_prep_cif_machdep) +AC_CHECK_FUNC(ffi_prep_cif_var) +AC_CHECK_FUNC(ffi_prep_closure) +AC_CHECK_FUNC(ffi_prep_closure_loc) +AC_CHECK_FUNC(ffi_prep_java_raw_closure) +AC_CHECK_FUNC(ffi_prep_java_raw_closure_loc) +AC_CHECK_FUNC(ffi_prep_raw_closure) +AC_CHECK_FUNC(ffi_prep_raw_closure_loc) +AC_CHECK_FUNC(ffi_ptrarray_to_raw) +AC_CHECK_FUNC(ffi_raw_call) +AC_CHECK_FUNC(ffi_raw_size) +AC_CHECK_FUNC(ffi_raw_to_ptrarray) ], []) -AC_SUBST(WITH_SPIDERMONKEY_SUBDIR) +dnl # JavaScript +WITH_JS_SUBDIR="" #WITH_SPIDERMONKEY_SUBDIR="" -#AC_LANG_PUSH(C++) #RPM_CHECK_LIB( -#[MozJS (mozjs-24)], [mozjs24], -#[mozjs-24], [_fini], [jsapi.h], -#[no,external:none], [mozjs-24:src:src], +#[MozJS (js-1.8.5)], [mozjs185], +#[mozjs185], [JS_NewContext], [jsapi.h], +#[no,external:none], [mozjs185:src:src], #[ if test ".$RPM_CHECK_LIB_LOCATION" = .internal; then # WITH_SPIDERMONKEY_SUBDIR="$WITH_JS_SUBD
[CVS] RPM: rpm-5_4: rpm/ CHANGES rpm/rpmio/ Makefile.am librpmio.vers ...
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: 10-Jul-2017 11:38:54 Branch: rpm-5_4 Handle: 20090419190007259511927 Modified files: (Branch: rpm-5_4) rpm CHANGES rpm/rpmio Makefile.am librpmio.vers macro.c poptIO.c rpmio.c rpmjss.h Removed files:(Branch: rpm-5_4) rpm/rpmio rpmjs.cpp rpmjs.h rpmjsio.c rpmjsio.h rpmjsio.msg Log: - rpmjs: upgrade js-1.8.5 with mozjs-45 (internal). Summary: RevisionChanges Path 1.3501.2.582+1 -0 rpm/CHANGES 1.293.2.105 +23 -12 rpm/rpmio/Makefile.am 2.199.2.98 +7 -10 rpm/rpmio/librpmio.vers 2.249.2.49 +4 -5 rpm/rpmio/macro.c 1.94.2.41 +2 -2 rpm/rpmio/poptIO.c 1.230.2.62 +2 -2 rpm/rpmio/rpmio.c 1.1 +0 -901rpm/rpmio/rpmjs.cpp 1.10+0 -141rpm/rpmio/rpmjs.h 1.4 +0 -2960 rpm/rpmio/rpmjsio.c 1.1 +0 -56 rpm/rpmio/rpmjsio.h 1.1 +0 -90 rpm/rpmio/rpmjsio.msg 1.1.2.5 +0 -2 rpm/rpmio/rpmjss.h patch -p0 <<'@@ .' Index: rpm/CHANGES $ cvs diff -u -r1.3501.2.581 -r1.3501.2.582 CHANGES --- rpm/CHANGES 1 Jul 2017 04:35:47 - 1.3501.2.581 +++ rpm/CHANGES 10 Jul 2017 09:38:53 - 1.3501.2.582 @@ -1,4 +1,5 @@ 5.4.17 -> 5.4.18: +- jbj: rpmjs: upgrade js-1.8.5 with mozjs-45 (internal). - jbj: macros: update %efi (http://rpm5.org/community/rpm-devel/5699.html)/ - jbj: scripts: honor COMPRESS envvar (if set) (http://rpm5.org/community/rpm-devel/5698.html) - jbj: scripts: get rid of unused (http://rpm5.org/community/rpm-devel/5697.html) @@ . patch -p0 <<'@@ .' Index: rpm/rpmio/Makefile.am $ cvs diff -u -r1.293.2.104 -r1.293.2.105 Makefile.am --- rpm/rpmio/Makefile.am 4 Jul 2017 03:09:00 - 1.293.2.104 +++ rpm/rpmio/Makefile.am 10 Jul 2017 09:38:54 - 1.293.2.105 @@ -17,8 +17,7 @@ EXTRA_DIST = librpmio.vers \ getdate.y html-parse.c html-parse.h libsqlio.c \ rpmcpio.c rpmcpio.h rpmgenbasedir.c rpmgenpkglist.c rpmgensrclist.c \ - rpmjsio.msg rpmtar.c rpmtar.h \ - rpmjs0ad.cpp rpmjs185.cpp rpmjs17.cpp rpmjs24.cpp rpmjs31.cpp rpmjs38.cpp rpmjs45.cpp \ + rpmtar.c rpmtar.h \ tdir.c teio.c tfts.c tget.c tgfs.c tgit.c tglob.c thkp.c thtml.c \ tinv.c tkey.c tmire.c tmq.c tmqtt.c todbc.c tput.c tpython.c trpmio.c \ tsexp.c tsvn.c tsw.c lookup3.c duktape.c tjsmn.c tjson.c yajl.c \ @@ -163,8 +162,8 @@ pcrs.h rpmacl.h rpmaio.h rpmasn.h rpmaug.h rpmbag.h rpmbc.h rpmbz.h \ rpmcap.h rpmcdsa.h rpmct.h rpmcudf.h rpmcvs.h rpmdate.h rpmdav.h \ rpmdir.h rpmeio.h rpmev.h rpmficl.h rpmgc.h rpmgfs.h rpmgit.h \ - rpmhash.h rpmhkp.h rpmhook.h rpmio_internal.h rpmjni.h rpmjs.h \ - rpmjsio.h rpmkeyring.h rpmku.h rpmltc.h rpmlua.h \ + rpmhash.h rpmhkp.h rpmhook.h rpmio_internal.h rpmjni.h rpmjss.h \ + rpmkeyring.h rpmku.h rpmltc.h rpmlua.h \ rpmmqtt.h rpmmrb.h rpmmsq.h rpmnix.h rpmnss.h rpmodbc.h \ rpmperl.h rpmpgp.h rpmpython.h rpmruby.h rpmsed.h rpmsm.h rpmsp.h \ rpmsq.h rpmsql.h rpmsquirrel.h rpmssl.h rpmsvn.h rpmsx.h rpmsyck.h \ @@ -181,7 +180,7 @@ groestl.c hamsi.c jh.c keccak.c lane.c luffa.c md2.c md6.c radiogatun.c\ salsa10.c salsa20.c shabal.c shavite3.c simd.c skein.c tib3.c tiger.c \ rpmgit.c rpmio-stub.c \ - rpmjs.cpp rpmjsio.c rpmkeyring.c \ + rpmjs45shim.cpp rpmjss.cpp rpmkeyring.c \ rpmnix.c rpmodbc.c rpmsql.c set.c \ ar.c \ argv.c \ @@ -282,8 +281,7 @@ DISTCLEANFILES += $(defexec_DATA) endif -# XXX FIXME: error: inlining failed in call to always_inline â__signbitâ -librpmio_la_LIBADD = +librpmio_la_LIBADD = $(top_builddir)/js/src/libmozjs.la #librpmio_la_LIBADD += duktape.o -lm if ENABLE_BUILD_INTLIBDEP librpmio_la_LIBADD += \ @@ -322,11 +320,24 @@ @$(LTCOMPILE) -O0 -c $< keccak.lo: $(top_srcdir)/rpmio/keccak.c @$(LTCOMPILE) -O0 -c $< -# XXX JS_ALWAYS_INLINE needs -O0 with -fgnu-tm -#rpmjs.lo: $(top_srcdir)/rpmio/rpmjs.c -#@$(LTCOMPILE) -O0 -c $< -rpmjs.lo: $(top_srcdir)/rpmio/rpmjs.cpp - @$(LTCOMPILE) -O0 -c $< + +moz_srcdir = ${top_srcdir}/js/extract +MOZ_CPPFLAGS = \ + -DEXPORT_JS_API \ + -DDLL_PREFIX='"li