Ann: MELT plugin 1.1 release candidate 1 available

4 views
Skip to first unread message

Basile Starynkevitch

unread,
Jul 26, 2014, 3:05:09 AM7/26/14
to g...@gcc.gnu.org, gcc-...@googlegroups.com
Dear All,

It is my please to announce the MELT plugin 1.1 release candidate 1 for
GCC 4.8 and 4.9 (hosted preferably on Linux).

MELT -see http://gcc-melt.org/ for more - is a domain specific language
and meta-plugin (free software GPLv3+ licensed, FSF copyrighted) to
easily extend and customize the GCC compiler.

The MELT plugin 1.1 release candidate 1 (for GCC 4.8 or 4.9, with major
updates since previous MELT plugin 1.0.2) is available (since july 26th,
2014) from
http://gcc-melt.org/melt-1.1-rc1-plugin-for-gcc-4.8-or-4.9.tar.bz2

as a bzip2-ed tar source file of md5sum
3b7ea46dddac2e81927c211ca6a90201, and of 3891814 bytes (3.8 Megabytes),
extracted from MELT branch svn revision 213071.

NEWS for 1.1 MELT plugin for GCC 4.8 & 4.9
[[july 2014]]
This is a major release (with perhaps some small incompatibilities
with previous MELT plugin releases).

End-user improvements
=====================

***

The module list files *.modlis accept conditioned extra
modules. Within them, a line like

?findgimple xtramelt-ana-simple.optimized

means that: if the mode is findgimple, load the xtramelt-ana-simple
module in its optimized flavour.

The predefined modules now are named libmelt*.melt for standard
library modules and xtramelt*.melt for extra modules.

Language improvements
=====================

Add support for JSON (parsing and emitting JSON format) and
JSONRPC2 client with TCP/IP transport. See
DO_BLOCKING_JSONRPC2_CALL, MAKE_JSON_PARSER, OUTPUT_JSON, etc...
This requires an UTF-8 locale.

***

Several bug fixes, notably MELT-SFT-8. Better variadic binding.
Many small improvements.

***

The MODULE_IS_GPL_COMPATIBLE directive is now required to avoid
warnings. Your modules should be GPL compatible, and state that with
a directive like

(MODULE_IS_GPL_COMPATIBLE <reason-string>)

for example
(MODULE_IS_GPL_COMPATIBLE "GPLv3")



Runtime improvements
====================

***

The old GTKmm (or Qt/Python) probe is becoming deprecated. A
partial support for JSON & JsonRpc2 client is available. A
web-based MELT monitor is in the works, but not yet released.

***

Input channel handlers can be either paragraph oriented (like in
previous MELT releases) or raw input.

***

We don't use setjmp but C++ exceptions

***

melt_walk_use_def_chains adapted for GCC 4.9, and compatibility with
GCC 4.9

***

The successful modes list is printed.

***

Nearly systematic use of hooks.

***

Improved support of pragmas, with both REGISTER_EXPANDED_PRAGMA &
REGISTER_PLAIN_PRAGMA function.

***

Sorting primitives like multiple_sort are fully reentrant, so their
compare routine might do a sort itself!

***

Remove old option handling, REGISTER_OPTION is removed.


####

Bug and success reports are welcome on gcc-...@googlegroups.com

(If I get no annoying critical bug report, I will release MELT plugin
1.1 in the next few days)

Regards.

--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***


Basile Starynkevitch

unread,
Jul 26, 2014, 1:10:25 PM7/26/14
to gcc-...@googlegroups.com
On Sat, 2014-07-26 at 09:05 +0200, Basile Starynkevitch wrote:
> Dear All,
>
> It is my please to announce the MELT plugin 1.1 release candidate 1 for
> GCC 4.8 and 4.9 (hosted preferably on Linux).
>
> MELT -see http://gcc-melt.org/ for more - is a domain specific language
> and meta-plugin (free software GPLv3+ licensed, FSF copyrighted) to
> easily extend and customize the GCC compiler.
>
> The MELT plugin 1.1 release candidate 1 (for GCC 4.8 or 4.9, with major
> updates since previous MELT plugin 1.0.2) is available (since july 26th,
> 2014) from
> http://gcc-melt.org/melt-1.1-rc1-plugin-for-gcc-4.8-or-4.9.tar.bz2
>
> as a bzip2-ed tar source file of md5sum
> 3b7ea46dddac2e81927c211ca6a90201, and of 3891814 bytes (3.8 Megabytes),
> extracted from MELT branch svn revision 213071.

Sorry, I notice a bug when installing it.

#####
rm -f meltbuild-sources/*~
for f in \
meltbuild-sources/*.cc \
meltbuild-sources/*.c \
meltbuild-sources/*.h \
meltbuild-sources/*.mk \
meltbuild-sources/*.melt \
meltbuild-sources/*.modlis \
; do \
install -b -p -m 644
$f /tmp/meltinstall/usr/lib/gcc/x86_64-linux-gnu/4.9/plugin/melt-sources/1.1-rc1/ ; \
done
installing MELT modules
directory /usr/lib/gcc/x86_64-linux-gnu/4.9/plugin/melt-modules/1.1-rc1
incomplete meltbuild-modules missing xtramelt-ana-base optimized
Makefile:541: recipe for target 'install-melt-modules' failed
make: *** [install-melt-modules] Error 1

Some bug in the plugin Makefile, sorry about that. Will correct it soon
(perhaps tomorrow).

Basile Starynkevitch

unread,
Jul 27, 2014, 4:23:26 AM7/27/14
to gcc-...@googlegroups.com
On Sat, Jul 26, 2014 at 07:10:19PM +0200, Basile Starynkevitch wrote:
[....]
The fix is probably simple. I am start testing with the following patch:

##########################################
Index: MELT-Plugin-Makefile
===================================================================
--- MELT-Plugin-Makefile (revision 213092)
+++ MELT-Plugin-Makefile (working copy)
@@ -539,9 +539,9 @@
### notice that meltbuild-modules is a directory filled by the all target
install-melt-modules:
@echo installing MELT modules directory $(melt_module_dir)
-# we check that some xtramelt-ana-base module exist
- @[ -f meltbuild-modules/xtramelt-ana-base.meltmod*.optimized.so ] \
- || (echo incomplete meltbuild-modules missing xtramelt-ana-base optimized; exit 1)
+# we check that some libmelt-ana-base module exist
+ @[ -f meltbuild-modules/libmelt-ana-base.meltmod*.optimized.so ] \
+ || (echo incomplete meltbuild-modules missing libmelt-ana-base optimized; exit 1)
$(mkinstalldirs) $(DESTDIR)$(melt_module_dir)
for l in meltbuild-modules/[a-z]*.meltmod*.so ; do \
$(INSTALL_PROGRAM) $$l $(DESTDIR)$(melt_module_dir)/ ; \
##########################################

I hope to release MELT 1.1 as soon as the tests are ok.

Regards, and sorry for the inconvenience.

--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***

Basile Starynkevitch

unread,
Jul 27, 2014, 12:50:33 PM7/27/14
to gcc-...@googlegroups.com
On Sat, Jul 26, 2014 at 07:10:19PM +0200, Basile Starynkevitch wrote:
That bug is corrected in
http://gcc-melt.org/melt-plugin-snapshot-r213101-2014july27.tar.bz2

However, I got another bug when compiling that plugin on a system having
both GCC 4.8 & 4.9 with 4.9 being the default. Technical details are in
my latest StackOverflow question, http://stackoverflow.com/q/24982923/841108

Regards.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***

Basile Starynkevitch

unread,
Jul 27, 2014, 3:18:13 PM7/27/14
to g...@gcc.gnu.org, gcc-...@googlegroups.com, ctunings-...@googlegroups.com

Dear All,

It is my pleasure to announce the MELT plugin 1.1 release for GCC 4.8 &
4.9 (hosted preferably on Linux). I've corrected all the bugs found in
MELT 1.1rc1.

MELT -see http://gcc-melt.org/ for more - is a domain specific language
and meta-plugin (free software GPLv3+ licensed, FSF copyrighted) to
easily extend and customize the GCC compiler.

The MELT plugin 1.1 release (for GCC 4.8 or 4.9, with major
updates since previous MELT plugin 1.0.2) is available (since july 27th,
2014) from
http://gcc-melt.org/melt-1.1-plugin-for-gcc-4.8-or-4.9.tar.bz2
This is a bzipped2 source tar archive of 3891501 bytes (3.8 Mbytes) of
md5sum dcd4332f91140f12bee51ae4d33f66f0

This MELT 1.1 plugin is extracted from the GCC MELT branch svn revision
213094

NEWS for 1.1 MELT plugin for GCC 4.8 & 4.9

[[july 27th, 2014]]
Reply all
Reply to author
Forward
0 new messages