The native_pbc branch is ready to be merged. The tests are now stable, and the pbc format has been cleaned up to include no hard-coded parrot version number. The opslib header and init function contains now the PBC_COMPAT version number, which enables parrot to read pbc files from older but still pbc compatible parrots. The whole exercise to have such a number.
See below: ---------- Forwarded message ---------- From: GitHub <[email protected]> Date: Sat, Sep 1, 2012 at 2:18 PM Subject: [parrot/parrot] ea86d0: Revive pbc To: [email protected] Branch: refs/heads/native_pbc Home: https://github.com/parrot/parrot Commit: ea86d0f04a4486b1cb49bc27ded4675b575c82a2 https://github.com/parrot/parrot/commit/ea86d0f04a4486b1cb49bc27ded4675b575c82a2 Author: Reini Urban <[email protected]> Date: 2012-09-01 (Sat, 01 Sep 2012) Changed paths: M PBC_COMPAT M compilers/opsc/Rules.mak M compilers/opsc/src/Ops/Emitter.pm M compilers/opsc/src/Ops/File.pm M config/auto/revision.pm M config/gen/config_h/config_h.in M config/gen/config_pm.pm M config/gen/config_pm/config_lib_pir.in M config/gen/makefiles/root.in M frontend/pbc_dump/main.c M include/parrot/oplib.h M include/parrot/oplib/core_ops.h M src/ops/core_ops.c M src/packfile/segments.c M src/pmc/oplib.pmc M src/pmc/packfile.pmc M t/compilers/opsc/06-opsfile.t M t/compilers/opsc/08-emitter.t M t/native_pbc/testdata/annotations.pir Log Message: ----------- Revive pbc The parrot utils could not load pbc compatible, but older pbc fils anymore because opslib directories and the init function hardcoded the parrot version (even with patch!) and not the PBC_COMPAT version. Replaced all parrot version triples in the pbc format with the PBC version duple. parrot utils can now load older but compatible pbc files (again). Replaced the hardcoded version numbers with c preprocessor macros in the bootstrapped opslib sources and headers, to be more independent and simplier implementation. If the ops did not change, the ops do not need to get regenerated anymore for each version bump. The Ops::Emitter version method is not used anymore, since bootstrap-ops has been simplified. Sanified the Makefile by adding missing dependencies and do proper identation for depends and commands. Prev. line-broken depends were not visually indistuingishible from commands, and line-broken commands neither. Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision. Bump PBC_COMPAT to 13.0, the opslib directories store now only two version numbers, not three. _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-commits -- Reini Urban http://cpanel.net/ http://www.perl-compiler.org/ _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
