* CEDET merge
@ 2009-09-28 15:31 Chong Yidong
2009-09-28 17:31 ` Ulrich Mueller
` (10 more replies)
0 siblings, 11 replies; 194+ messages in thread
From: Chong Yidong @ 2009-09-28 15:31 UTC (permalink / raw)
To: emacs-devel
I have merged most of the CEDET branch into the trunk. You may need to
bootstrap; please let me know if there are any build failures.
I have done what I can to clean up CEDET to conform to Emacs standards;
if you see anything I missed, please go ahead and make the change.
Currently, the interface to Semantic is via "M-x semantic-mode", and to
EDE via "M-x global-ede-mode"; these should install a "Development" menu
on the menu bar that can be used to enable further features.
Suggestions about improving this interface, and the CEDET integration in
general, are welcome.
(If you want to make bigger changes to the internals of CEDET itself,
please discuss first, because we need to coordinate that kind of change
with upstream.)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
@ 2009-09-28 17:31 ` Ulrich Mueller
2009-09-28 17:55 ` Chong Yidong
2009-09-28 17:47 ` Eli Zaretskii
` (9 subsequent siblings)
10 siblings, 1 reply; 194+ messages in thread
From: Ulrich Mueller @ 2009-09-28 17:31 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
>>>>> On Mon, 28 Sep 2009, Chong Yidong wrote:
> I have merged most of the CEDET branch into the trunk. You may need
> to bootstrap; please let me know if there are any build failures.
I've tried to byte-compile some packages like company-mode [1] and
JDE [2] with the CEDET included in Emacs, and they fail because some
files that they require have a different name now. For example:
In toplevel form:
company-semantic.el:21:1:Error: Cannot open load file: semantic-ia
Was this renaming of files really necessary? It breaks backwards
compatibility and imposes additional work on package authors and
distros.
Ulrich
[1] http://nschum.de/src/emacs/company-mode/
[2] http://jdee.sourceforge.net/
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
2009-09-28 17:31 ` Ulrich Mueller
@ 2009-09-28 17:47 ` Eli Zaretskii
2009-09-28 18:00 ` Eli Zaretskii
` (8 subsequent siblings)
10 siblings, 0 replies; 194+ messages in thread
From: Eli Zaretskii @ 2009-09-28 17:47 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
> From: Chong Yidong <cyd@stupidchicken.com>
> Date: Mon, 28 Sep 2009 11:31:51 -0400
>
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
Thanks. I suggest to update ldefs-boot.el.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 17:31 ` Ulrich Mueller
@ 2009-09-28 17:55 ` Chong Yidong
2009-09-28 18:42 ` Ulrich Mueller
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-09-28 17:55 UTC (permalink / raw)
To: Ulrich Mueller; +Cc: emacs-devel
Ulrich Mueller <ulm@gentoo.org> writes:
> Was this renaming of files really necessary? It breaks backwards
> compatibility and imposes additional work on package authors and
> distros.
No one suggested any other solution to the filename problem.
Maybe we could get around this by adding a `cedet-compat' package that
loads everything everything in CEDET and provides all the old CEDET
feature names; then loading this file will provide everything a
third-party package needs to compile.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
2009-09-28 17:31 ` Ulrich Mueller
2009-09-28 17:47 ` Eli Zaretskii
@ 2009-09-28 18:00 ` Eli Zaretskii
2009-09-28 18:25 ` Chong Yidong
2009-09-28 18:20 ` Phil Hagelberg
` (7 subsequent siblings)
10 siblings, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2009-09-28 18:00 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
> From: Chong Yidong <cyd@stupidchicken.com>
> Date: Mon, 28 Sep 2009 11:31:51 -0400
>
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
I see warnings about shadowing libraries, after bootstrapping:
This site has duplicate Lisp libraries with the same name.
If a locally-installed Lisp library overrides a library in the Emacs release,
that can cause trouble, and you should probably remove the locally-installed
version unless you know what you are doing.
emacs/lisp/format hides emacs/lisp/cedet/semantic/format
emacs/lisp/emacs-lisp/debug hides emacs/lisp/cedet/semantic/debug
emacs/lisp/complete hides emacs/lisp/cedet/semantic/complete
emacs/lisp/emacs-lisp/chart hides emacs/lisp/cedet/semantic/chart
emacs/lisp/loaddefs hides emacs/lisp/cedet/semantic/loaddefs
emacs/lisp/sort hides emacs/lisp/cedet/semantic/sort
emacs/lisp/cedet/semantic/wisent hides emacs/lisp/cedet/semantic/wisent/wisent
emacs/lisp/progmodes/grep hides emacs/lisp/cedet/semantic/symref/grep
emacs/lisp/emacs-lisp/debug hides emacs/lisp/cedet/semantic/bovine/debug
emacs/lisp/emacs-lisp/debug hides emacs/lisp/cedet/semantic/analyze/debug
emacs/lisp/complete hides emacs/lisp/cedet/semantic/analyze/complete
11 Emacs Lisp load-path shadowings were found
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (2 preceding siblings ...)
2009-09-28 18:00 ` Eli Zaretskii
@ 2009-09-28 18:20 ` Phil Hagelberg
2009-09-28 22:10 ` Chong Yidong
2009-09-28 19:34 ` CEDET merge Andreas Schwab
` (6 subsequent siblings)
10 siblings, 1 reply; 194+ messages in thread
From: Phil Hagelberg @ 2009-09-28 18:20 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
>
> I have done what I can to clean up CEDET to conform to Emacs standards;
> if you see anything I missed, please go ahead and make the change.
Thanks. I am working on Rudel, a library that requires CEDET, and this
should make the install process much easier.
Rudel uses eieio as well as inversion.el, fame.el, and working.el. The
last three of these are files from CEDET's common/ directory. From what
I can tell, fame.el and working.el were not included in the merge. Was
this intentional? What were the deciding factors in what to include?
Perhaps they could be offered using package.el if we decide to integrate
it into Emacs?
-Phil
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 18:00 ` Eli Zaretskii
@ 2009-09-28 18:25 ` Chong Yidong
2009-09-28 19:23 ` Eli Zaretskii
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-09-28 18:25 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
Eli Zaretskii <eliz@gnu.org> writes:
> I see warnings about shadowing libraries, after bootstrapping:
>
> This site has duplicate Lisp libraries with the same name.
> If a locally-installed Lisp library overrides a library in the Emacs release,
> that can cause trouble, and you should probably remove the locally-installed
> version unless you know what you are doing.
That's strange. Does your load path include lisp/cedet/semantic after
bootstrapping, and if so is there a subdirs.el in lisp/cedet for some
reason? It should not be there; I made a change in Makefile.in
specifically to prevent subdirs.el from being created in that directory.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 17:55 ` Chong Yidong
@ 2009-09-28 18:42 ` Ulrich Mueller
2009-09-28 19:30 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Ulrich Mueller @ 2009-09-28 18:42 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
>>>>> On Mon, 28 Sep 2009, Chong Yidong wrote:
>> Was this renaming of files really necessary? It breaks backwards
>> compatibility and imposes additional work on package authors and
>> distros.
> No one suggested any other solution to the filename problem.
The obvious solution is not to support CEDET on platforms with 8+3
filenames ...
> Maybe we could get around this by adding a `cedet-compat' package
> that loads everything everything in CEDET and provides all the old
> CEDET feature names; then loading this file will provide everything
> a third-party package needs to compile.
Not sure if loading everything at once is a good idea. CEDET is huge.
But couldn't at least the old feature names be provided by the single
files? (As it was done for newsticker-*, for example.)
Ulrich
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 18:25 ` Chong Yidong
@ 2009-09-28 19:23 ` Eli Zaretskii
2009-09-28 19:27 ` Andreas Schwab
0 siblings, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2009-09-28 19:23 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
> From: Chong Yidong <cyd@stupidchicken.com>
> Cc: emacs-devel@gnu.org
> Date: Mon, 28 Sep 2009 14:25:48 -0400
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > I see warnings about shadowing libraries, after bootstrapping:
> >
> > This site has duplicate Lisp libraries with the same name.
> > If a locally-installed Lisp library overrides a library in the Emacs release,
> > that can cause trouble, and you should probably remove the locally-installed
> > version unless you know what you are doing.
>
> That's strange. Does your load path include lisp/cedet/semantic after
> bootstrapping
Yes, it includes cedet, cedet/semantic, cedet/semantic/wisent,
cedet/semantic/symref, cedet/semantic/decorate, cedet/semantic/bovine,
and cedet/semantic/analyze
> and if so is there a subdirs.el in lisp/cedet for some
> reason?
Yes, there is. It says this:
(normal-top-level-add-to-load-path '("semantic" ))
There's also subdirs.el in cedet/semantic.
> It should not be there; I made a change in Makefile.in
> specifically to prevent subdirs.el from being created in that directory.
What change you made, and in what Makefile.in?
All I can say is that I ran `confugure' and `make -j6 bootstrap'. And
I have the Bash history to prove that.
[Time passes...] Ah, I think I see the problem: this subdirs.el is
very old, from 2 weeks ago. I think it was created when you added the
directories in the CEDET branch, at which time they appeared (as
empty) on HEAD as well, and then make-subdirs created the file. If I
delete that file, the problem is gone.
So maybe "make bootstrap" should delete all subdirs.el, as cleanup.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 19:23 ` Eli Zaretskii
@ 2009-09-28 19:27 ` Andreas Schwab
0 siblings, 0 replies; 194+ messages in thread
From: Andreas Schwab @ 2009-09-28 19:27 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: Chong Yidong, emacs-devel
Eli Zaretskii <eliz@gnu.org> writes:
> [Time passes...] Ah, I think I see the problem: this subdirs.el is
> very old, from 2 weeks ago. I think it was created when you added the
> directories in the CEDET branch, at which time they appeared (as
> empty) on HEAD as well, and then make-subdirs created the file.
You should always pass -P to cvs update.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 18:42 ` Ulrich Mueller
@ 2009-09-28 19:30 ` Chong Yidong
2009-09-28 20:03 ` Ulrich Mueller
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-09-28 19:30 UTC (permalink / raw)
To: Ulrich Mueller; +Cc: emacs-devel
Ulrich Mueller <ulm@gentoo.org> writes:
>>>>>> On Mon, 28 Sep 2009, Chong Yidong wrote:
>
>>> Was this renaming of files really necessary? It breaks backwards
>>> compatibility and imposes additional work on package authors and
>>> distros.
>
>> No one suggested any other solution to the filename problem.
>
> The obvious solution is not to support CEDET on platforms with 8+3
> filenames ...
I'm no expert, but according to Eli, having files longer than 8+3 in the
tarball leads to problems unpacking the tarball on DOS, and other
problems on some versions of Windows:
http://lists.gnu.org/archive/html/emacs-devel/2006-02/msg00149.html
http://lists.gnu.org/archive/html/emacs-devel/2005-12/msg01709.html
>> Maybe we could get around this by adding a `cedet-compat' package
>> that loads everything everything in CEDET and provides all the old
>> CEDET feature names; then loading this file will provide everything
>> a third-party package needs to compile.
>
> Not sure if loading everything at once is a good idea. CEDET is huge.
> But couldn't at least the old feature names be provided by the single
> files? (As it was done for newsticker-*, for example.)
We can do that, but how does this solve the problem? The old `require'
calls still won't find the correct file (unless we implement feature
aliases or something like that).
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (3 preceding siblings ...)
2009-09-28 18:20 ` Phil Hagelberg
@ 2009-09-28 19:34 ` Andreas Schwab
2009-09-28 20:20 ` Andreas Schwab
2009-09-28 20:20 ` Alan Mackenzie
` (5 subsequent siblings)
10 siblings, 1 reply; 194+ messages in thread
From: Andreas Schwab @ 2009-09-28 19:34 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
Compiling /home/andreas/src/emacs/emacs/lisp/cedet/semantic.el
In toplevel form:
../../emacs/lisp/cedet/semantic.el:33:1:Error: Given parent class semantic-symref-tool-baseclass is not a class
make[3]: *** [compile-last] Error 1
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 19:30 ` Chong Yidong
@ 2009-09-28 20:03 ` Ulrich Mueller
2009-09-28 20:20 ` Rupert Swarbrick
0 siblings, 1 reply; 194+ messages in thread
From: Ulrich Mueller @ 2009-09-28 20:03 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
>>>>> On Mon, 28 Sep 2009, Chong Yidong wrote:
>> The obvious solution is not to support CEDET on platforms with 8+3
>> filenames ...
> I'm no expert, but according to Eli, having files longer than 8+3
> in the tarball leads to problems unpacking the tarball on DOS, and
> other problems on some versions of Windows:
Supporting such antediluvian platforms is nice as long as it's
possible without too much effort. But if it becomes too much of a
burden one should reconsider if it's worthwhile (IMHO).
The renaming also increases the differences between Emacs and XEmacs
and packages intended for both will have to add further case
distinctions.
>> But couldn't at least the old feature names be provided by the
>> single files? (As it was done for newsticker-*, for example.)
> We can do that, but how does this solve the problem? The old
> `require' calls still won't find the correct file (unless we
> implement feature aliases or something like that).
It wouldn't solve it completely, but once the file is loaded the
feature (with the right name) will be present, and the third-party
package will run.
Ulrich
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 20:03 ` Ulrich Mueller
@ 2009-09-28 20:20 ` Rupert Swarbrick
2009-09-28 22:16 ` Ulrich Mueller
0 siblings, 1 reply; 194+ messages in thread
From: Rupert Swarbrick @ 2009-09-28 20:20 UTC (permalink / raw)
To: emacs-devel
[-- Attachment #1: Type: text/plain, Size: 770 bytes --]
Ulrich Mueller <ulm@gentoo.org> writes:
>> I'm no expert, but according to Eli, having files longer than 8+3
>> in the tarball leads to problems unpacking the tarball on DOS, and
>> other problems on some versions of Windows:
>
> Supporting such antediluvian platforms is nice as long as it's
> possible without too much effort. But if it becomes too much of a
> burden one should reconsider if it's worthwhile (IMHO).
antediluvian. Windows. Well, maybe, but on which of the platforms on
which Emacs runs does it have the most users? Come the revolution, we
FOSSers can drop compatibility hacks but until then, comrades, I'm
afraid we'll have to keep making allowances for those still in chains.
Rupert
(Who didn't write that last sentence grinning. Of course not)
[-- Attachment #2: Type: application/pgp-signature, Size: 315 bytes --]
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (4 preceding siblings ...)
2009-09-28 19:34 ` CEDET merge Andreas Schwab
@ 2009-09-28 20:20 ` Alan Mackenzie
2009-09-28 21:57 ` Chong Yidong
2009-09-29 4:28 ` Glenn Morris
` (4 subsequent siblings)
10 siblings, 1 reply; 194+ messages in thread
From: Alan Mackenzie @ 2009-09-28 20:20 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Hi, there!
On Mon, Sep 28, 2009 at 11:31:51AM -0400, Chong Yidong wrote:
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
Without the bootstrap, it failed to compile the cedet sources. With a
make bootstrap, it just worked, out of the box. :-)
> I have done what I can to clean up CEDET to conform to Emacs standards;
> if you see anything I missed, please go ahead and make the change.
> Currently, the interface to Semantic is via "M-x semantic-mode", and to
> EDE via "M-x global-ede-mode"; these should install a "Development" menu
> on the menu bar that can be used to enable further features.
> Suggestions about improving this interface, and the CEDET integration in
> general, are welcome.
> (If you want to make bigger changes to the internals of CEDET itself,
> please discuss first, because we need to coordinate that kind of change
> with upstream.)
Quick question. Are there any CEDET manuals in this build? I didn't
see any.
--
Alan Mackenzie (Nuremberg, Germany).
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 19:34 ` CEDET merge Andreas Schwab
@ 2009-09-28 20:20 ` Andreas Schwab
0 siblings, 0 replies; 194+ messages in thread
From: Andreas Schwab @ 2009-09-28 20:20 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
> Compiling /home/andreas/src/emacs/emacs/lisp/cedet/semantic.el
>
> In toplevel form:
> ../../emacs/lisp/cedet/semantic.el:33:1:Error: Given parent class semantic-symref-tool-baseclass is not a class
> make[3]: *** [compile-last] Error 1
That was due to a broken loaddefs file.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 20:20 ` Alan Mackenzie
@ 2009-09-28 21:57 ` Chong Yidong
0 siblings, 0 replies; 194+ messages in thread
From: Chong Yidong @ 2009-09-28 21:57 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: emacs-devel
Alan Mackenzie <acm@muc.de> writes:
> Quick question. Are there any CEDET manuals in this build? I didn't
> see any.
They need to go in doc/misc, but I haven't done that yet. (They
probably need to be checked too.)
I'll do this over the next few days, unless someone would like to do it
for me (they can be found in the CEDET upstream repository).
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 18:20 ` Phil Hagelberg
@ 2009-09-28 22:10 ` Chong Yidong
2009-09-28 22:25 ` Phil Hagelberg
2009-09-30 16:38 ` Phil Hagelberg
0 siblings, 2 replies; 194+ messages in thread
From: Chong Yidong @ 2009-09-28 22:10 UTC (permalink / raw)
To: Phil Hagelberg; +Cc: emacs-devel
Phil Hagelberg <phil@hagelb.org> writes:
> Rudel uses eieio as well as inversion.el, fame.el, and working.el. The
> last three of these are files from CEDET's common/ directory. From what
> I can tell, fame.el and working.el were not included in the merge. Was
> this intentional? What were the deciding factors in what to include?
I didn't include working.el (and fame.el, which is only there for
working.el) because I couldn't work out what advantage it brought over
the built-in progress reporter, which is a couple of hundred lines in
subr.el, already documented in the manual, and works fine. This seems
too big a solution for a problem that's tangentially related to the rest
of CEDET, but maybe you can convince me otherwise.
As for the other omitted stuff, there are a couple of files in Semantic
not written by Eric that we don't have paperwork for yet (the Imenu
support and the Erlang and Python parsers). Also the Srecode template
files and Semantic grammar files, which I haven't figured out where to
put (maybe a subdirectory in admin; any help with this task would be
appreciated). And I may have overlooked some other things.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 20:20 ` Rupert Swarbrick
@ 2009-09-28 22:16 ` Ulrich Mueller
0 siblings, 0 replies; 194+ messages in thread
From: Ulrich Mueller @ 2009-09-28 22:16 UTC (permalink / raw)
To: Rupert Swarbrick; +Cc: emacs-devel
>>>>> On Mon, 28 Sep 2009, Rupert Swarbrick wrote:
>>> I'm no expert, but according to Eli, having files longer than 8+3
>>> in the tarball leads to problems unpacking the tarball on DOS, and
>>> other problems on some versions of Windows:
>>
>> Supporting such antediluvian platforms is nice as long as it's
>> possible without too much effort. But if it becomes too much of a
>> burden one should reconsider if it's worthwhile (IMHO).
> antediluvian. Windows.
;-)
> Well, maybe, but on which of the platforms on which Emacs runs does
> it have the most users? Come the revolution, we FOSSers can drop
> compatibility hacks but until then, comrades, I'm afraid we'll have
> to keep making allowances for those still in chains.
As far as I understand it, the 8+3 limitation is only relevant for
MS-DOS and very old (pre-NT?) MS-Windows versions. So users of recent
Windows should not be affected by it.
Ulrich
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 22:10 ` Chong Yidong
@ 2009-09-28 22:25 ` Phil Hagelberg
2009-09-30 16:38 ` Phil Hagelberg
1 sibling, 0 replies; 194+ messages in thread
From: Phil Hagelberg @ 2009-09-28 22:25 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> This seems too big a solution for a problem that's tangentially
> related to the rest of CEDET, but maybe you can convince me otherwise.
Not at all, I'd rather remove the working.el dependency from
Rudel itself. Thanks for the explanation.
-Phil
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (5 preceding siblings ...)
2009-09-28 20:20 ` Alan Mackenzie
@ 2009-09-29 4:28 ` Glenn Morris
2009-09-29 11:28 ` Eric M. Ludlam
2009-09-30 9:32 ` Juanma Barranquero
` (3 subsequent siblings)
10 siblings, 1 reply; 194+ messages in thread
From: Glenn Morris @ 2009-09-29 4:28 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong wrote:
> I have merged most of the CEDET branch into the trunk.
It seems you did not merge semantic/adebug.el, was this deliberate?
semantic/db-find.el claims that data-debug-insert-tag-list is defined
in data-debug.el, but it is not, it is defined in adebug.el, which is
not present in the trunk.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-29 4:28 ` Glenn Morris
@ 2009-09-29 11:28 ` Eric M. Ludlam
0 siblings, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-09-29 11:28 UTC (permalink / raw)
To: Glenn Morris; +Cc: Chong Yidong, emacs-devel
On Tue, 2009-09-29 at 00:28 -0400, Glenn Morris wrote:
> Chong Yidong wrote:
>
> > I have merged most of the CEDET branch into the trunk.
>
> It seems you did not merge semantic/adebug.el, was this deliberate?
>
> semantic/db-find.el claims that data-debug-insert-tag-list is defined
> in data-debug.el, but it is not, it is defined in adebug.el, which is
> not present in the trunk.
>
Your email has reminded me that I've wanted to rename semantic-adebug.el
to something more descriptive. It was originally a semantic specific
tool which I generalized as a data-debug.el for most things in Emacs.
Not that I have a fabulous name in mind though. "a" was just a vowel to
go along with "e" debug which is a bit lame. It should probably be
semantic-datadebug.el to match up with eieio-datadebug.el. (Using the
parlance of the CEDET suite on sourceforge. For Emacs I guess it would
be semantic/datadebug.el.)
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (6 preceding siblings ...)
2009-09-29 4:28 ` Glenn Morris
@ 2009-09-30 9:32 ` Juanma Barranquero
2009-09-30 18:38 ` Eli Zaretskii
2009-09-30 10:29 ` Sascha Wilde
` (2 subsequent siblings)
10 siblings, 1 reply; 194+ messages in thread
From: Juanma Barranquero @ 2009-09-30 9:32 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
On Mon, Sep 28, 2009 at 17:31, Chong Yidong <cyd@stupidchicken.com> wrote:
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
semantic/cedet/wisent/javat-wy.el has coding issues, because of this line:
("char" summary "Integral primitive type ('^@' to '\357\227\227')
(0 to 65535)")
so on Windows it is decoded as "=(Unix)" (i.e., no-conversion, LF),
and does not compile:
In toplevel form:
javat-wy.el:680:36:Error: End of file during parsing
Juanma
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (7 preceding siblings ...)
2009-09-30 9:32 ` Juanma Barranquero
@ 2009-09-30 10:29 ` Sascha Wilde
2009-10-01 10:58 ` Sascha Wilde
2009-10-01 3:58 ` Miles Bader
2009-10-07 3:43 ` Phil Hagelberg
10 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-09-30 10:29 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> wrote:
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
Thanks a lot I'm very curious about this new features.
Giving the ede part a quick try[0] I stumbled upon a bunch of problems:
- After enabling global-ede-mode mode first observation was, that the
new Development-menu was not accessible when using the pseudo menu on
an tty (haven't tested an graphical interface yet): <F10> shows
`---Development' among the menu items, which cant be selected.
- After creating a new project of the type `automake' (ede-new) and
adding a new target with one source file (plain hello world in c) I
tried `ede-compile-target' which reviled an error in one provide form.
This patch fixes it:
diff -r d4a1d308c9fe lisp/cedet/ede/srecode.el
--- a/lisp/cedet/ede/srecode.el Wed Sep 30 11:07:53 2009 +0200
+++ b/lisp/cedet/ede/srecode.el Wed Sep 30 12:08:48 2009 +0200
@@ -101,6 +101,6 @@
))
-(provide 'ede-srecode)
+(provide 'ede/srecode)
;;; ede-srecode.el ends here
- But after that fix compiling still fails. Now with:
eieio-generic-call-primary-only: Method srecode-template-get-table called on nil
Any ideas?
cheers
sascha
[0] Disclaimer: I have never used CEDET before, so if some of my reports
don't make any sense, please tell me so...
--
Sascha Wilde
Life's too short to read boring signatures
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 22:10 ` Chong Yidong
2009-09-28 22:25 ` Phil Hagelberg
@ 2009-09-30 16:38 ` Phil Hagelberg
2009-09-30 17:29 ` Chong Yidong
1 sibling, 1 reply; 194+ messages in thread
From: Phil Hagelberg @ 2009-09-30 16:38 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> I didn't include working.el (and fame.el, which is only there for
> working.el) because I couldn't work out what advantage it brought over
> the built-in progress reporter, which is a couple of hundred lines in
> subr.el, already documented in the manual, and works fine.
The reason Rudel uses the CEDET one vs the built-in Emacs one is that it
needs a way to indicate that something is happening without knowing the
overall percentage of the task that is actually complete. I believe this
is commonly known as "pulsing" or a "spinner".
We could probably implement this as an addition to the built-in progress
reporter in subr.el; would this be a welcome feature?
-Phil
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-30 16:38 ` Phil Hagelberg
@ 2009-09-30 17:29 ` Chong Yidong
2009-09-30 21:43 ` Phil Hagelberg
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-09-30 17:29 UTC (permalink / raw)
To: Phil Hagelberg; +Cc: emacs-devel
Phil Hagelberg <phil@hagelb.org> writes:
> The reason Rudel uses the CEDET one vs the built-in Emacs one is that it
> needs a way to indicate that something is happening without knowing the
> overall percentage of the task that is actually complete. I believe this
> is commonly known as "pulsing" or a "spinner".
>
> We could probably implement this as an addition to the built-in progress
> reporter in subr.el; would this be a welcome feature?
Yes, and it should be easy to implement too.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-30 9:32 ` Juanma Barranquero
@ 2009-09-30 18:38 ` Eli Zaretskii
2009-09-30 19:32 ` Juanma Barranquero
0 siblings, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2009-09-30 18:38 UTC (permalink / raw)
To: Juanma Barranquero; +Cc: cyd, emacs-devel
> From: Juanma Barranquero <lekktu@gmail.com>
> Date: Wed, 30 Sep 2009 11:32:25 +0200
> Cc: emacs-devel@gnu.org
>
> semantic/cedet/wisent/javat-wy.el has coding issues, because of this line:
>
> ("char" summary "Integral primitive type ('^@' to '\357\227\227')
> (0 to 65535)")
>
> so on Windows it is decoded as "=(Unix)" (i.e., no-conversion, LF),
The same happens on Unix, because the null byte forces the file to be
treated as binary.
> and does not compile:
>
> In toplevel form:
> javat-wy.el:680:36:Error: End of file during parsing
Why, because the lines actually have CRLF Windows-style EOLs on your
machine? Or for some other reason? IOW, I don't see why
no-conversion should cause the file not to compile, and only on
Windows. What am I missing?
Anyway, 2 ideas to work around this:
. Replace the null byte with \000
. Put "inhibit-null-byte-detection: t" in file-local variables.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-30 18:38 ` Eli Zaretskii
@ 2009-09-30 19:32 ` Juanma Barranquero
0 siblings, 0 replies; 194+ messages in thread
From: Juanma Barranquero @ 2009-09-30 19:32 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: cyd, emacs-devel
On Wed, Sep 30, 2009 at 20:38, Eli Zaretskii <eliz@gnu.org> wrote:
>> and does not compile:
>>
>> In toplevel form:
>> javat-wy.el:680:36:Error: End of file during parsing
>
> Why, because the lines actually have CRLF Windows-style EOLs on your
> machine?
Checking it out with CVS, yes, it has CRLF EOLs. In fact, editing it
all lines end with ^M.
> IOW, I don't see why
> no-conversion should cause the file not to compile, and only on
> Windows. What am I missing?
The CRs, apparently.
> Anyway, 2 ideas to work around this:
>
> . Replace the null byte with \000
That works.
Juanma
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-30 17:29 ` Chong Yidong
@ 2009-09-30 21:43 ` Phil Hagelberg
2009-10-01 1:19 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Phil Hagelberg @ 2009-09-30 21:43 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> Phil Hagelberg <phil@hagelb.org> writes:
>> The reason Rudel uses the CEDET one vs the built-in Emacs one is that it
>> needs a way to indicate that something is happening without knowing the
>> overall percentage of the task that is actually complete. I believe this
>> is commonly known as "pulsing" or a "spinner".
>>
>> We could probably implement this as an addition to the built-in progress
>> reporter in subr.el; would this be a welcome feature?
>
> Yes, and it should be easy to implement too.
Here's what I've come up with:
(defvar progress-pulse-values ["-" "\\" "|" "/"]
"A vector of characters to use for pulsing progress reporters.")
(defun make-pulsing-progress-reporter (&optional message)
"Return a pulsing progress reporter that display MESSAGE.
MESSAGE can contain all formatting characters accepted by
`format'. If message is nil, the string \"Working ...\" is
displayed.
Example:
(let ((rep (make-pulsing-progress-reporter \"Connecting\")))
(dotimes (n 3)
(sleep-for 0.1)
(progress-reporter-pulse rep \"Connecting [new]\"))
(dotimes (n 3)
(sleep-for 0.1)
(progress-reporter-pulse rep \"Connecting [synching]\"))
(dotimes (n 3)
(sleep-for 0.1)
(progress-reporter-pulse rep \"Connecting [idle]\"))
(progress-reporter-pulse rep \"Connecting \")
(progress-reporter-done rep))"
(cons nil ; total value is not known
(vector nil 0 'dummy (or message "Working ... "))))
(defun progress-reporter-pulse (reporter &optional new-message)
"Advance pulsing indicator of REPORTER. Display NEW-MESSAGE if given."
(let* ((parameters (cdr reporter))
(message (or new-message (aref parameters 3)))
(index (aref parameters 1))
(new-index (mod (+ index 1) 4)))
(aset parameters 1 new-index)
(aset parameters 3 message)
(let ((message-log-max nil)) ; No logging
(message "%s %s"
(aref progress-pulse-values new-index)
message))))
The example in the docstring should make it clear how this works. It's
fairly close to how the existing progress reporter works, but it's got
nil in a couple places in the data structure due to not knowing the
total progress.
I have my paperwork in. I could submit this as a patch if that's more
convenient, or you could find a place for it in subr.el.
Thanks!
-Phil
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-30 21:43 ` Phil Hagelberg
@ 2009-10-01 1:19 ` Chong Yidong
2009-10-01 3:20 ` Phil Hagelberg
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-01 1:19 UTC (permalink / raw)
To: Phil Hagelberg; +Cc: emacs-devel
Phil Hagelberg <phil@hagelb.org> writes:
> (defun make-pulsing-progress-reporter (&optional message)
I think `make-progress-reporter' should do "pulsing" automatically if
min-value and max-value are null, instead of providing a new function.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 1:19 ` Chong Yidong
@ 2009-10-01 3:20 ` Phil Hagelberg
2009-10-01 5:14 ` Phil Hagelberg
0 siblings, 1 reply; 194+ messages in thread
From: Phil Hagelberg @ 2009-10-01 3:20 UTC (permalink / raw)
To: Chong Yidong; +Cc: scymtym, emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> Phil Hagelberg <phil@hagelb.org> writes:
>
>> (defun make-pulsing-progress-reporter (&optional message)
>
> I think `make-progress-reporter' should do "pulsing" automatically if
> min-value and max-value are null, instead of providing a new function.
Good idea. I will implement that and send a patch.
-Phil
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (8 preceding siblings ...)
2009-09-30 10:29 ` Sascha Wilde
@ 2009-10-01 3:58 ` Miles Bader
2009-10-01 11:31 ` Eric M. Ludlam
2009-10-07 3:43 ` Phil Hagelberg
10 siblings, 1 reply; 194+ messages in thread
From: Miles Bader @ 2009-10-01 3:58 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> Currently, the interface to Semantic is via "M-x semantic-mode", and to
> EDE via "M-x global-ede-mode"; these should install a "Development" menu
> on the menu bar that can be used to enable further features.
> Suggestions about improving this interface, and the CEDET integration in
> general, are welcome.
(1)
"M-x semantic-mode" works, but if I do "M-x global-ede-mode", I get the
following error:
Cannot open load file: ede/makefile-edit
If there are already source-file buffers when I do M-x global-ede-mode,
then I the error immediately, otherwise, it happens when I visit a
source file or directory.
I tried "make bootstrap" etc, with no improvement.
(2)
I get the following error with semantic-mode:
(a) visit the following source file:
---- cut here ----
#include <stdio.h>
int main ()
{
printf ("hello world\n");
return 0;
}
---- cut here ----
(b) do M-x semantic-mode
(c) position point after "printf"
(d) use the command: "C-c , j"
(I don't even know what that command does, but it gets an error...)
(e) I get the following error/backtrace:
Debugger entered--Lisp error: (wrong-type-argument syntax-table-p nil)
set-syntax-table(nil)
semantic-ctxt-current-symbol-default(nil)
semantic-ctxt-current-symbol()
semantic-ctxt-current-thing()
semantic-complete-default-to-tag(nil)
semantic-complete-read-tag-engine([object semantic-collector-buffer-deep "Sym$
semantic-complete-read-tag-buffer-deep("Symbol: ")
semantic-complete-jump-local()
call-interactively(semantic-complete-jump-local nil nil)
-miles
--
"Though they may have different meanings, the cries of 'Yeeeee-haw!' and
'Allahu akbar!' are, in spirit, not actually all that different."
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 3:20 ` Phil Hagelberg
@ 2009-10-01 5:14 ` Phil Hagelberg
2009-10-01 7:07 ` Stefan Monnier
0 siblings, 1 reply; 194+ messages in thread
From: Phil Hagelberg @ 2009-10-01 5:14 UTC (permalink / raw)
To: Chong Yidong; +Cc: scymtym, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 921 bytes --]
Phil Hagelberg <phil@hagelb.org> writes:
> Chong Yidong <cyd@stupidchicken.com> writes:
>> Phil Hagelberg <phil@hagelb.org> writes:
>>
>>> (defun make-pulsing-progress-reporter (&optional message)
>>
>> I think `make-progress-reporter' should do "pulsing" automatically if
>> min-value and max-value are null, instead of providing a new function.
>
> Good idea. I will implement that and send a patch.
The attached patch implements this. So make-progress-reporter will make
a pulsing reporter when min-value and max-value are not specified.
I made it so that you must use progress-reporter-pulse to update a
pulsing reporter, but I realized afterwards that it would be easy enough
to have progress-reporter-update check to see if the reporter is a
pulsing one or not and call the correct function underneath without the
caller having to think about it.
If you think this is a good idea I can make the change.
-Phil
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Add-pulsing-progress-reporter-functionality.patch --]
[-- Type: text/x-diff, Size: 3855 bytes --]
From 91f10af059ab03d50da990a332995b93aa4fcfbc Mon Sep 17 00:00:00 2001
From: Phil Hagelberg <technomancy@gmail.com>
Date: Wed, 30 Sep 2009 22:02:57 -0700
Subject: [PATCH] Add pulsing progress reporter functionality.
---
lisp/subr.el | 41 ++++++++++++++++++++++++++++++-----------
1 files changed, 30 insertions(+), 11 deletions(-)
diff --git a/lisp/subr.el b/lisp/subr.el
index a7d3fcd..e26783f 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -3415,9 +3415,8 @@ you call it."
(when (>= value (car reporter))
(progress-reporter-do-update reporter value)))
-(defun make-progress-reporter (message min-value max-value
- &optional current-value
- min-change min-time)
+(defun make-progress-reporter (message &optional min-value max-value
+ current-value min-change min-time)
"Return progress reporter object to be used with `progress-reporter-update'.
MESSAGE is shown in the echo area. When at least 1% of operation
@@ -3426,20 +3425,23 @@ MESSAGE. When you call `progress-reporter-done', word \"done\"
is printed after the MESSAGE. You can change MESSAGE of an
existing progress reporter with `progress-reporter-force-update'.
-MIN-VALUE and MAX-VALUE designate starting (0% complete) and
-final (100% complete) states of operation. The latter should be
-larger; if this is not the case, then simply negate all values.
-Optional CURRENT-VALUE specifies the progress by the moment you
-call this function. You should omit it or set it to nil in most
-cases since it defaults to MIN-VALUE.
+If provided, MIN-VALUE and MAX-VALUE designate starting (0%
+complete) and final (100% complete) states of operation. The
+latter should be larger; if this is not the case, then simply
+negate all values. Optional CURRENT-VALUE specifies the progress
+by the moment you call this function. You should omit it or set
+it to nil in most cases since it defaults to MIN-VALUE.
Optional MIN-CHANGE determines the minimal change in percents to
report (default is 1%.) Optional MIN-TIME specifies the minimal
time before echo area updates (default is 0.2 seconds.) If
`float-time' function is not present, then time is not tracked
at all. If OS is not capable of measuring fractions of seconds,
-then this parameter is effectively rounded up."
+then this parameter is effectively rounded up.
+If MIN-VALUE and MAX-VALUE are unknown, they may be omitted to
+return a \"pulsing\" progress reporter. This should be updated
+using the `progress-reporter-pulse' function instead."
(unless min-time
(setq min-time 0.2))
(let ((reporter
@@ -3447,7 +3449,7 @@ then this parameter is effectively rounded up."
(vector (if (and (fboundp 'float-time)
(>= min-time 0.02))
(float-time) nil)
- min-value
+ (or min-value 0)
max-value
message
(if min-change (max (min min-change 50) 1) 1)
@@ -3505,6 +3507,23 @@ change the displayed message."
(message "%s%d%%" (aref parameters 3) percentage)
(message "%s" (aref parameters 3))))))
+(defvar progress-pulse-values ["-" "\\" "|" "/"]
+ "Characters to use for pulsing progress reporters.")
+
+(defun progress-reporter-pulse (reporter &optional new-message)
+ "Advance pulsing indicator of REPORTER. Display NEW-MESSAGE if given."
+ (let* ((parameters (cdr reporter))
+ (message (or new-message
+ (aref parameters 3)))
+ (index (aref parameters 1))
+ (new-index (mod (+ index 1) 4)))
+ (aset parameters 1 new-index)
+ (aset parameters 3 message)
+ (let ((message-log-max nil)) ; No logging
+ (message "%s %s"
+ (aref progress-pulse-values new-index)
+ message))))
+
(defun progress-reporter-done (reporter)
"Print reporter's message followed by word \"done\" in echo area."
(message "%sdone" (aref (cdr reporter) 3)))
--
1.6.0.4
^ permalink raw reply related [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 5:14 ` Phil Hagelberg
@ 2009-10-01 7:07 ` Stefan Monnier
2009-10-02 17:46 ` Phil Hagelberg
0 siblings, 1 reply; 194+ messages in thread
From: Stefan Monnier @ 2009-10-01 7:07 UTC (permalink / raw)
To: Phil Hagelberg; +Cc: Chong Yidong, scymtym, emacs-devel
> I made it so that you must use progress-reporter-pulse to update a
> pulsing reporter, but I realized afterwards that it would be easy enough
> to have progress-reporter-update check to see if the reporter is a
> pulsing one or not and call the correct function underneath without the
> caller having to think about it.
> If you think this is a good idea I can make the change.
Yes, that would be even better, thank you,
Stefan
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-30 10:29 ` Sascha Wilde
@ 2009-10-01 10:58 ` Sascha Wilde
2009-10-01 11:38 ` Eric M. Ludlam
0 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-01 10:58 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Sascha Wilde <wilde@sha-bang.de> wrote:
> -(provide 'ede-srecode)
> +(provide 'ede/srecode)
This was fixed in current CVS, thanks.
> - But after that fix compiling still fails. Now with:
> eieio-generic-call-primary-only: Method srecode-template-get-table called on nil
This problem is still there. A question to all CEDET/EDE experts: is
this an bug or am I missing something?
(and FWIW the development menu is still broken in tty mode, on X11/gtk
it works well).
--
Sascha Wilde
Nothing is fool-proof to a sufficiently talented fool.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 3:58 ` Miles Bader
@ 2009-10-01 11:31 ` Eric M. Ludlam
2009-10-01 14:48 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-01 11:31 UTC (permalink / raw)
To: Miles Bader; +Cc: Chong Yidong, emacs-devel
On Thu, 2009-10-01 at 12:58 +0900, Miles Bader wrote:
> Chong Yidong <cyd@stupidchicken.com> writes:
> (2)
> I get the following error with semantic-mode:
>
> (a) visit the following source file:
>
> ---- cut here ----
> #include <stdio.h>
>
> int main ()
> {
> printf ("hello world\n");
> return 0;
> }
> ---- cut here ----
>
> (b) do M-x semantic-mode
>
> (c) position point after "printf"
>
> (d) use the command: "C-c , j"
> (I don't even know what that command does, but it gets an error...)
>
> (e) I get the following error/backtrace:
>
> Debugger entered--Lisp error: (wrong-type-argument syntax-table-p nil)
> set-syntax-table(nil)
> semantic-ctxt-current-symbol-default(nil)
> semantic-ctxt-current-symbol()
> semantic-ctxt-current-thing()
> semantic-complete-default-to-tag(nil)
> semantic-complete-read-tag-engine([object semantic-collector-buffer-deep "Sym$
> semantic-complete-read-tag-buffer-deep("Symbol: ")
> semantic-complete-jump-local()
> call-interactively(semantic-complete-jump-local nil nil)
I haven't had the opportunity to use the Emacs/CEDET merged version, but
I can provide some help here. The Semantic configuration was setup to
be done in a .emacs file, or very early on, and all the necessary setup
is done in mode hooks after that. If you load in a C file, then turn on
Semantic, then your current buffer will not have the right variables
setup. In this case, it is a variable that tweaks the syntax table.
I think the right order would be
M-x semantic-mode
;; create the file
continue with above script.
I would guess that the new semantic-mode should either warn on
pre-existing buffers, or find a way to apply itself to pre-existing
buffers. The standalone CEDET install works around this by the file
that loads CEDET doing these installs in your .emacs file. The
assumption being that if you installed CEDET, you want this stuff on,
which is not the case for Emacs.
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 10:58 ` Sascha Wilde
@ 2009-10-01 11:38 ` Eric M. Ludlam
2009-10-01 12:51 ` Sascha Wilde
2009-10-03 20:10 ` CEDET merge Chong Yidong
0 siblings, 2 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-01 11:38 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, emacs-devel
On Thu, 2009-10-01 at 12:58 +0200, Sascha Wilde wrote:
> Sascha Wilde <wilde@sha-bang.de> wrote:
> > -(provide 'ede-srecode)
> > +(provide 'ede/srecode)
>
> This was fixed in current CVS, thanks.
>
> > - But after that fix compiling still fails. Now with:
> > eieio-generic-call-primary-only: Method srecode-template-get-table called on nil
>
> This problem is still there. A question to all CEDET/EDE experts: is
> this an bug or am I missing something?
Chong Yidong said he hadn't figured out where to put the SRecode
templates. Since EDE uses Srecode to templates to create Makefiles,
that is likely the problem. The way SRecode looks up template files may
also not be compatible with where the templates will eventually live in
Emacs, so that would need to be updated.
Short term, you could get the templates from CEDET CVS in
cedet/srecode/templates and cedet/ede/templates and place them in
equivalent locations just under srecode.el and ede.el to get past this
until there is a home for SRecode Templates in Emacs.
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 11:38 ` Eric M. Ludlam
@ 2009-10-01 12:51 ` Sascha Wilde
2009-10-01 16:28 ` Sascha Wilde
2009-10-03 20:10 ` CEDET merge Chong Yidong
1 sibling, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-01 12:51 UTC (permalink / raw)
To: eric; +Cc: Chong Yidong, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> wrote:
> On Thu, 2009-10-01 at 12:58 +0200, Sascha Wilde wrote:
>> Sascha Wilde <wilde@sha-bang.de> wrote:
>> > - But after that fix compiling still fails. Now with:
>> > eieio-generic-call-primary-only: Method srecode-template-get-table called on nil
>> This problem is still there. A question to all CEDET/EDE experts: is
>> this an bug or am I missing something?
>
> Chong Yidong said he hadn't figured out where to put the SRecode
> templates. Since EDE uses Srecode to templates to create Makefiles,
> that is likely the problem.
Thanks for your explanation.
> Short term, you could get the templates from CEDET CVS in
> cedet/srecode/templates and cedet/ede/templates and place them in
> equivalent locations just under srecode.el and ede.el to get past this
> until there is a home for SRecode Templates in Emacs.
I'll give it a try...
cheers
sascha
--
>++++++[<+++++++++++>-]<+.>+++[<++++++>-]<.---.---------.++++++.++++.---------
-.+++++++++++.+++++.>+++++++[<-------->-]<-.>++++++[<+++++++>-]<+.--.+++..----
---.-.>++++++[<------>-]<.>++++[<+++++++++++++>-]<.------------.---.>++++++[<-
----->-]<-.>+++++[<+++++++>-]<.--.>+++[<++++++>-]<+.>++++++++[<--------->-]<--.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 11:31 ` Eric M. Ludlam
@ 2009-10-01 14:48 ` Chong Yidong
0 siblings, 0 replies; 194+ messages in thread
From: Chong Yidong @ 2009-10-01 14:48 UTC (permalink / raw)
To: eric; +Cc: emacs-devel, Miles Bader
"Eric M. Ludlam" <eric@siege-engine.com> writes:
> I would guess that the new semantic-mode should either warn on
> pre-existing buffers, or find a way to apply itself to pre-existing
> buffers.
This should be easy to implement, but I have not had time to do it yet.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 12:51 ` Sascha Wilde
@ 2009-10-01 16:28 ` Sascha Wilde
2009-10-03 13:07 ` Eric M. Ludlam
0 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-01 16:28 UTC (permalink / raw)
To: eric; +Cc: Chong Yidong, emacs-devel
Sascha Wilde <wilde@sha-bang.de> wrote:
> "Eric M. Ludlam" <eric@siege-engine.com> wrote:
>> On Thu, 2009-10-01 at 12:58 +0200, Sascha Wilde wrote:
>>> Sascha Wilde <wilde@sha-bang.de> wrote:
>>> > - But after that fix compiling still fails. Now with:
>>> > eieio-generic-call-primary-only: Method srecode-template-get-table called on nil
[...]
>> Short term, you could get the templates from CEDET CVS in
>> cedet/srecode/templates and cedet/ede/templates and place them in
>> equivalent locations just under srecode.el and ede.el to get past this
>> until there is a home for SRecode Templates in Emacs.
>
> I'll give it a try...
hmm, didn't work -- or maybe I haven't fully understood what to do.
Here is what I tried:
- I checked out the current cedet head from CVS
- I copied the directory cedet/ede/templates to
/usr/share/emacs/23.1.50/lisp/cedet/ede/templates and
cedet/srecode/templates to
/usr/share/emacs/23.1.50/lisp/cedet/srecode/templates
That didn't work, so I tried puting all *.srt files from
cedet/ede/templates directly under
/usr/share/emacs/23.1.50/lisp/cedet/ede/ (and same for
/usr/share/emacs/23.1.50/lisp/cedet/srecode/) but this didn't work
either....
What am I missing?
sascha
--
Sascha Wilde
Programmer - A red-eyed, mumbling mammal capable of conversing with
inanimate objects.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 7:07 ` Stefan Monnier
@ 2009-10-02 17:46 ` Phil Hagelberg
2010-03-17 18:24 ` progress-reporter (was: CEDET merge) Michael Albinus
0 siblings, 1 reply; 194+ messages in thread
From: Phil Hagelberg @ 2009-10-02 17:46 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, scymtym, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 691 bytes --]
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> I made it so that you must use progress-reporter-pulse to update a
>> pulsing reporter, but I realized afterwards that it would be easy enough
>> to have progress-reporter-update check to see if the reporter is a
>> pulsing one or not and call the correct function underneath without the
>> caller having to think about it.
>
>> If you think this is a good idea I can make the change.
>
> Yes, that would be even better, thank you,
I've attached the patches that implement this. Pulsing reporters can use
progress-reporter-update like normal ones and can have their messages
changed using progress-reporter-force-update.
thanks!
Phil
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Add-pulsing-progress-reporter-functionality.patch --]
[-- Type: text/x-diff, Size: 3855 bytes --]
From 91f10af059ab03d50da990a332995b93aa4fcfbc Mon Sep 17 00:00:00 2001
From: Phil Hagelberg <technomancy@gmail.com>
Date: Wed, 30 Sep 2009 22:02:57 -0700
Subject: [PATCH] Add pulsing progress reporter functionality.
---
lisp/subr.el | 41 ++++++++++++++++++++++++++++++-----------
1 files changed, 30 insertions(+), 11 deletions(-)
diff --git a/lisp/subr.el b/lisp/subr.el
index a7d3fcd..e26783f 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -3415,9 +3415,8 @@ you call it."
(when (>= value (car reporter))
(progress-reporter-do-update reporter value)))
-(defun make-progress-reporter (message min-value max-value
- &optional current-value
- min-change min-time)
+(defun make-progress-reporter (message &optional min-value max-value
+ current-value min-change min-time)
"Return progress reporter object to be used with `progress-reporter-update'.
MESSAGE is shown in the echo area. When at least 1% of operation
@@ -3426,20 +3425,23 @@ MESSAGE. When you call `progress-reporter-done', word \"done\"
is printed after the MESSAGE. You can change MESSAGE of an
existing progress reporter with `progress-reporter-force-update'.
-MIN-VALUE and MAX-VALUE designate starting (0% complete) and
-final (100% complete) states of operation. The latter should be
-larger; if this is not the case, then simply negate all values.
-Optional CURRENT-VALUE specifies the progress by the moment you
-call this function. You should omit it or set it to nil in most
-cases since it defaults to MIN-VALUE.
+If provided, MIN-VALUE and MAX-VALUE designate starting (0%
+complete) and final (100% complete) states of operation. The
+latter should be larger; if this is not the case, then simply
+negate all values. Optional CURRENT-VALUE specifies the progress
+by the moment you call this function. You should omit it or set
+it to nil in most cases since it defaults to MIN-VALUE.
Optional MIN-CHANGE determines the minimal change in percents to
report (default is 1%.) Optional MIN-TIME specifies the minimal
time before echo area updates (default is 0.2 seconds.) If
`float-time' function is not present, then time is not tracked
at all. If OS is not capable of measuring fractions of seconds,
-then this parameter is effectively rounded up."
+then this parameter is effectively rounded up.
+If MIN-VALUE and MAX-VALUE are unknown, they may be omitted to
+return a \"pulsing\" progress reporter. This should be updated
+using the `progress-reporter-pulse' function instead."
(unless min-time
(setq min-time 0.2))
(let ((reporter
@@ -3447,7 +3449,7 @@ then this parameter is effectively rounded up."
(vector (if (and (fboundp 'float-time)
(>= min-time 0.02))
(float-time) nil)
- min-value
+ (or min-value 0)
max-value
message
(if min-change (max (min min-change 50) 1) 1)
@@ -3505,6 +3507,23 @@ change the displayed message."
(message "%s%d%%" (aref parameters 3) percentage)
(message "%s" (aref parameters 3))))))
+(defvar progress-pulse-values ["-" "\\" "|" "/"]
+ "Characters to use for pulsing progress reporters.")
+
+(defun progress-reporter-pulse (reporter &optional new-message)
+ "Advance pulsing indicator of REPORTER. Display NEW-MESSAGE if given."
+ (let* ((parameters (cdr reporter))
+ (message (or new-message
+ (aref parameters 3)))
+ (index (aref parameters 1))
+ (new-index (mod (+ index 1) 4)))
+ (aset parameters 1 new-index)
+ (aset parameters 3 message)
+ (let ((message-log-max nil)) ; No logging
+ (message "%s %s"
+ (aref progress-pulse-values new-index)
+ message))))
+
(defun progress-reporter-done (reporter)
"Print reporter's message followed by word \"done\" in echo area."
(message "%sdone" (aref (cdr reporter) 3)))
--
1.6.0.4
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-Update-pulsing-reporters-to-work-with-regular-report.patch --]
[-- Type: text/x-diff, Size: 4320 bytes --]
From 89616487ab6f10fb5ec2d6369bddaf58745a40b3 Mon Sep 17 00:00:00 2001
From: Phil Hagelberg <technomancy@gmail.com>
Date: Fri, 2 Oct 2009 10:44:07 -0700
Subject: [PATCH] Update pulsing reporters to work with regular reporter functions.
Use progress-reporter-update for updating and
progress-reporter-force-update to update message. Remove
message-changing from progress-reporter-pulse.
---
lisp/subr.el | 51 ++++++++++++++++++++++++++++-----------------------
1 files changed, 28 insertions(+), 23 deletions(-)
diff --git a/lisp/subr.el b/lisp/subr.el
index e26783f..bbf2051 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -3399,21 +3399,25 @@ The properties used on SYMBOL are `composefunc', `sendfunc',
;; digits of precision, it doesn't really matter here. On the other
;; hand, it greatly simplifies the code.
-(defsubst progress-reporter-update (reporter value)
+(defsubst progress-reporter-update (reporter &optional value)
"Report progress of an operation in the echo area.
+
+The first parameter, REPORTER, should be the result of a call to
+`make-progress-reporter'. For reporters for which the max value
+is known, the second argument determines the actual progress of
+operation; it must be between MIN-VALUE and MAX-VALUE as passed
+to `make-progress-reporter'.
+
However, if the change since last echo area update is too small
or not enough time has passed, then do nothing (see
`make-progress-reporter' for details).
-First parameter, REPORTER, should be the result of a call to
-`make-progress-reporter'. Second, VALUE, determines the actual
-progress of operation; it must be between MIN-VALUE and MAX-VALUE
-as passed to `make-progress-reporter'.
-
-This function is very inexpensive, you may not bother how often
-you call it."
- (when (>= value (car reporter))
- (progress-reporter-do-update reporter value)))
+In this case, this function is very inexpensive, you need not
+care how often you call it."
+ (if (progress-reporter-pulsing-p reporter)
+ (progress-reporter-pulse reporter)
+ (when (>= value (car reporter))
+ (progress-reporter-do-update reporter value))))
(defun make-progress-reporter (message &optional min-value max-value
current-value min-change min-time)
@@ -3440,8 +3444,7 @@ at all. If OS is not capable of measuring fractions of seconds,
then this parameter is effectively rounded up.
If MIN-VALUE and MAX-VALUE are unknown, they may be omitted to
-return a \"pulsing\" progress reporter. This should be updated
-using the `progress-reporter-pulse' function instead."
+return a \"pulsing\" progress reporter."
(unless min-time
(setq min-time 0.2))
(let ((reporter
@@ -3468,7 +3471,9 @@ change the displayed message."
(aset parameters 3 new-message))
(when (aref parameters 0)
(aset parameters 0 (float-time)))
- (progress-reporter-do-update reporter value)))
+ (if (progress-reporter-pulsing-p reporter)
+ (progress-reporter-pulse reporter)
+ (progress-reporter-do-update reporter value))))
(defun progress-reporter-do-update (reporter value)
(let* ((parameters (cdr reporter))
@@ -3510,19 +3515,19 @@ change the displayed message."
(defvar progress-pulse-values ["-" "\\" "|" "/"]
"Characters to use for pulsing progress reporters.")
-(defun progress-reporter-pulse (reporter &optional new-message)
- "Advance pulsing indicator of REPORTER. Display NEW-MESSAGE if given."
+(defun progress-reporter-pulsing-p (reporter)
+ "Return t if REPORTER has an unknown max value."
+ (null (aref (cdr reporter) 2)))
+
+(defun progress-reporter-pulse (reporter)
+ "Advance pulsing indicator of REPORTER."
(let* ((parameters (cdr reporter))
- (message (or new-message
- (aref parameters 3)))
- (index (aref parameters 1))
- (new-index (mod (+ index 1) 4)))
- (aset parameters 1 new-index)
- (aset parameters 3 message)
+ (index (+ (aref parameters 1) 1)))
+ (aset parameters 1 index)
(let ((message-log-max nil)) ; No logging
(message "%s %s"
- (aref progress-pulse-values new-index)
- message))))
+ (aref progress-pulse-values (mod index 4))
+ (aref parameters 3)))))
(defun progress-reporter-done (reporter)
"Print reporter's message followed by word \"done\" in echo area."
--
1.6.0.4
^ permalink raw reply related [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 16:28 ` Sascha Wilde
@ 2009-10-03 13:07 ` Eric M. Ludlam
2009-10-03 21:01 ` Sascha Wilde
0 siblings, 1 reply; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-03 13:07 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, emacs-devel
On Thu, 2009-10-01 at 18:28 +0200, Sascha Wilde wrote:
> Sascha Wilde <wilde@sha-bang.de> wrote:
> > "Eric M. Ludlam" <eric@siege-engine.com> wrote:
> >> On Thu, 2009-10-01 at 12:58 +0200, Sascha Wilde wrote:
> >>> Sascha Wilde <wilde@sha-bang.de> wrote:
> >>> > - But after that fix compiling still fails. Now with:
> >>> > eieio-generic-call-primary-only: Method srecode-template-get-table called on nil
> [...]
> >> Short term, you could get the templates from CEDET CVS in
> >> cedet/srecode/templates and cedet/ede/templates and place them in
> >> equivalent locations just under srecode.el and ede.el to get past this
> >> until there is a home for SRecode Templates in Emacs.
> >
> > I'll give it a try...
>
> hmm, didn't work -- or maybe I haven't fully understood what to do.
> Here is what I tried:
> - I checked out the current cedet head from CVS
> - I copied the directory cedet/ede/templates to
> /usr/share/emacs/23.1.50/lisp/cedet/ede/templates and
> cedet/srecode/templates to
> /usr/share/emacs/23.1.50/lisp/cedet/srecode/templates
>
> That didn't work, so I tried puting all *.srt files from
> cedet/ede/templates directly under
> /usr/share/emacs/23.1.50/lisp/cedet/ede/ (and same for
> /usr/share/emacs/23.1.50/lisp/cedet/srecode/) but this didn't work
> either....
>
I must apologize for not actually trying out the Emacs integration. It
is pumpkin throwing season which keeps me busy. (see
www.punkinchunkin.com for the sport, or www.siege-engine.com for my
team.)
Anyway, the template directory is set up like this for EDE:
(let* ((lib (locate-library "ede.el" t))
(ededir (file-name-directory lib))
(tmpdir (file-name-as-directory
(expand-file-name "templates" ededir))))
(when (not tmpdir)
(error "Unable to location EDE Templates directory"))
(require 'srecode-map)
(add-to-list 'srecode-map-load-path tmpdir)
(srecode-map-update-map t)
but you could just do this in your basic setup by specifying a load path
for srecode directly, as in the code above reveals.
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-01 11:38 ` Eric M. Ludlam
2009-10-01 12:51 ` Sascha Wilde
@ 2009-10-03 20:10 ` Chong Yidong
2009-10-03 20:31 ` Eric M. Ludlam
1 sibling, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-03 20:10 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> writes:
> Short term, you could get the templates from CEDET CVS in
> cedet/srecode/templates and cedet/ede/templates and place them in
> equivalent locations just under srecode.el and ede.el to get past this
> until there is a home for SRecode Templates in Emacs.
I've added the SRecode templates to etc/srecode.
Building in EDE should now work---provided Semantic is enabled from the
start. We still need to provide a way for SRecode to call Semantic to
parse the template buffer, when Semantic is not currently enabled (this
functionality will be useful for other parts of Emacs too).
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-03 20:10 ` CEDET merge Chong Yidong
@ 2009-10-03 20:31 ` Eric M. Ludlam
2009-10-04 1:44 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-03 20:31 UTC (permalink / raw)
To: Chong Yidong; +Cc: Sascha Wilde, emacs-devel
On Sat, 2009-10-03 at 16:10 -0400, Chong Yidong wrote:
> "Eric M. Ludlam" <eric@siege-engine.com> writes:
>
> > Short term, you could get the templates from CEDET CVS in
> > cedet/srecode/templates and cedet/ede/templates and place them in
> > equivalent locations just under srecode.el and ede.el to get past this
> > until there is a home for SRecode Templates in Emacs.
>
> I've added the SRecode templates to etc/srecode.
>
> Building in EDE should now work---provided Semantic is enabled from the
> start. We still need to provide a way for SRecode to call Semantic to
> parse the template buffer, when Semantic is not currently enabled (this
> functionality will be useful for other parts of Emacs too).
Semantic can parse files even if all the other related utilities are
never enabled. As long as srecode-template-mode sets up the parser info
itself, and not in the new "semantic-mode", then it can use the Semantic
API to parse buffers during template compilation without interfering
with someones desire to not enable Semantic parsing and utilities in
other files, like C++ mode.
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-03 13:07 ` Eric M. Ludlam
@ 2009-10-03 21:01 ` Sascha Wilde
2009-10-06 16:15 ` Sascha Wilde
0 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-03 21:01 UTC (permalink / raw)
To: eric; +Cc: Chong Yidong, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 1799 bytes --]
"Eric M. Ludlam" <eric@siege-engine.com> wrote:
[...]
> I must apologize for not actually trying out the Emacs integration. It
> is pumpkin throwing season which keeps me busy. (see
> www.punkinchunkin.com for the sport, or www.siege-engine.com for my
> team.)
Thanks for your reply. I have to admit, that I hardly read any more
convincing (and judging from the pictures: more impressive) excuse for
being less responsive than that... ;-)
> Anyway, the template directory is set up like this for EDE:
>
> (let* ((lib (locate-library "ede.el" t))
> (ededir (file-name-directory lib))
> (tmpdir (file-name-as-directory
> (expand-file-name "templates" ededir))))
> (when (not tmpdir)
> (error "Unable to location EDE Templates directory"))
>
> (require 'srecode-map)
FWIW: 'srecode/map with the Emacs integration.
> (add-to-list 'srecode-map-load-path tmpdir)
> (srecode-map-update-map t)
This (and some digging in the content of srecode-map-load-path) brought
me a step further. I copied all ede and srecode templates from the
cedet CVS to ~/.srecode/ which was in my srecode-map-load-path.
Now I get an different error on any attempt to rebuild a projects
makefile (which afaiu is also a part of compiling). From *Messages*:
Replace EDE Makefile
Compiling template default.srt...
0 templates compiled for nil
srecode-compile-templates: You must specify a MODE for your templates
Is more information needed than that provided during ede-new and
ede-new-target?
cheers
sascha
--
Sascha Wilde
"Structure is _nothing_ if it is all you got. Skeletons _spook_ people if
thwy try to walk around on their own. I really wonder why XML does
not." -- Erik Naggum <erik@naggum.net> in comp.lang.lisp
[-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --]
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-03 20:31 ` Eric M. Ludlam
@ 2009-10-04 1:44 ` Chong Yidong
2009-10-04 2:30 ` Eric M. Ludlam
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-04 1:44 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> writes:
>> Building in EDE should now work---provided Semantic is enabled from the
>> start. We still need to provide a way for SRecode to call Semantic to
>> parse the template buffer, when Semantic is not currently enabled (this
>> functionality will be useful for other parts of Emacs too).
>
> Semantic can parse files even if all the other related utilities are
> never enabled. As long as srecode-template-mode sets up the parser info
> itself, and not in the new "semantic-mode", then it can use the Semantic
> API to parse buffers during template compilation without interfering
> with someones desire to not enable Semantic parsing and utilities in
> other files, like C++ mode.
How about this:
In the Emacs-integrated version of Semantic, we semantic-new-buffer-fcn
so that it runs the mode-dependent parser setup functions before doing
anything else. This is as opposed to running the parser setup functions
from the mode-hooks, as your upstream code does, or in the body of
semantic-mode, as the Emacs version currently does. So, when srecode
calls semantic-new-buffer-fcn, the right setup will take place.
What do you think?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-04 1:44 ` Chong Yidong
@ 2009-10-04 2:30 ` Eric M. Ludlam
2009-10-04 5:52 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-04 2:30 UTC (permalink / raw)
To: Chong Yidong; +Cc: Sascha Wilde, emacs-devel
On Sat, 2009-10-03 at 21:44 -0400, Chong Yidong wrote:
> "Eric M. Ludlam" <eric@siege-engine.com> writes:
>
> >> Building in EDE should now work---provided Semantic is enabled from the
> >> start. We still need to provide a way for SRecode to call Semantic to
> >> parse the template buffer, when Semantic is not currently enabled (this
> >> functionality will be useful for other parts of Emacs too).
> >
> > Semantic can parse files even if all the other related utilities are
> > never enabled. As long as srecode-template-mode sets up the parser info
> > itself, and not in the new "semantic-mode", then it can use the Semantic
> > API to parse buffers during template compilation without interfering
> > with someones desire to not enable Semantic parsing and utilities in
> > other files, like C++ mode.
>
> How about this:
>
> In the Emacs-integrated version of Semantic, we semantic-new-buffer-fcn
> so that it runs the mode-dependent parser setup functions before doing
> anything else. This is as opposed to running the parser setup functions
> from the mode-hooks, as your upstream code does, or in the body of
> semantic-mode, as the Emacs version currently does. So, when srecode
> calls semantic-new-buffer-fcn, the right setup will take place.
>
> What do you think?
I think I have failed to understand the above.
Does the Emacs integrated CEDET no longer use mode-local to call
semantic-new-buffer-fcn? That could be good news. The hooks available
in Emacs to detect a change in major mode for mode-local.el have been
challenging to get right, and I think they can still sometimes not work
right.
I did fail to explain in my paragraph above that mode-local.el would
need to be active for any files to be parse-able. I was referring to
semanticdb, and semantic-idle features do not need to be enabled for
SRecode to be able to parse/compile template files. As you point out,
the semantic-new-buffer-fcn does need to run, and the mode-local
settings need to be active for semantic to parse stuff.
Is there a desire to have srecode parse/compile template files while
leaving mode-local inactive? Does mode-local get activated with
semantic-mode? Perhaps I should check out a fresh copy of
Emacs to better understand. I've been worried of doing so because I
know I'll then need to also figure out how to enable my CEDET distro
shadowing the Emacs version, and I don't really want to do that work.
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-04 2:30 ` Eric M. Ludlam
@ 2009-10-04 5:52 ` Chong Yidong
0 siblings, 0 replies; 194+ messages in thread
From: Chong Yidong @ 2009-10-04 5:52 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> writes:
> Does the Emacs integrated CEDET no longer use mode-local to call
> semantic-new-buffer-fcn? That could be good news. The hooks available
> in Emacs to detect a change in major mode for mode-local.el have been
> challenging to get right, and I think they can still sometimes not work
> right.
No, semantic-new-buffer-fcn is still called from mode-local. I was
proposing to move the parser setup functions from the mode hooks into
semantic-new-buffer-fcn. That way, we can parse an existing buffer
(e.g., a buffer that already exists by the time Semantic is enabled, or
a buffer that Srecode wants to parse without enabling Semantic
globally), simply by calling semantic-new-buffer-fcn.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-03 21:01 ` Sascha Wilde
@ 2009-10-06 16:15 ` Sascha Wilde
2009-10-06 17:51 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-06 16:15 UTC (permalink / raw)
To: eric; +Cc: Chong Yidong, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 808 bytes --]
Sascha Wilde <wilde@sha-bang.de> wrote:
> Now I get an different error on any attempt to rebuild a projects
> makefile (which afaiu is also a part of compiling). From *Messages*:
>
> Replace EDE Makefile
> Compiling template default.srt...
> 0 templates compiled for nil
> srecode-compile-templates: You must specify a MODE for your templates
With the latest changes to the CEDET integration this problem vanished,
too. Now Makefile generation by EDE basically works.
However I still witness a bunch problems with my simple test cases.
Is it useful to report them here or should I wait for the CEDET
integration process to become more complete?
cheers
sascha
--
Sascha Wilde : "Ist es nicht schon schlimm genug, dass ICH hier rumtrolle?"
: (Henning Leise in d.o.c.)
[-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --]
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-06 16:15 ` Sascha Wilde
@ 2009-10-06 17:51 ` Chong Yidong
2009-10-07 9:34 ` Problems with EDE (was: CEDET merge) Sascha Wilde
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-06 17:51 UTC (permalink / raw)
To: Sascha Wilde; +Cc: emacs-devel, eric
Sascha Wilde <wilde@sha-bang.de> writes:
> With the latest changes to the CEDET integration this problem vanished,
> too. Now Makefile generation by EDE basically works.
>
> However I still witness a bunch problems with my simple test cases.
>
> Is it useful to report them here or should I wait for the CEDET
> integration process to become more complete?
Please, report them here.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-09-28 15:31 CEDET merge Chong Yidong
` (9 preceding siblings ...)
2009-10-01 3:58 ` Miles Bader
@ 2009-10-07 3:43 ` Phil Hagelberg
2009-10-07 5:37 ` Chong Yidong
10 siblings, 1 reply; 194+ messages in thread
From: Phil Hagelberg @ 2009-10-07 3:43 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> I have merged most of the CEDET branch into the trunk. You may need to
> bootstrap; please let me know if there are any build failures.
>
> I have done what I can to clean up CEDET to conform to Emacs standards;
> if you see anything I missed, please go ahead and make the change.
The doc header at the top of pulse.el mentions the function
pulse-enable-integration-advice, which has been removed presumably to
conform to Emacs "no advice in core" standard. But the comment has not
been updated.
The patch below fixes this.
-Phil
diff --git a/lisp/cedet/pulse.el b/lisp/cedet/pulse.el
index c7ece45..7977104 100644
--- a/lisp/cedet/pulse.el
+++ b/lisp/cedet/pulse.el
@@ -27,11 +27,6 @@
;; highlighted briefly. This adds a gentle pulsing style to the text
;; decorated this way.
;;
-;; Useful user functions:
-;;
-;; `pulse-enable-integration-advice' - Turn on advice to make various
-;; Emacs commands pulse, such as `goto-line', or `find-tag'.
-;;
;; The following are useful entry points:
;;
;; `pulse' - Cause `pulse-highlight-face' to shift toward background color.
^ permalink raw reply related [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-07 3:43 ` Phil Hagelberg
@ 2009-10-07 5:37 ` Chong Yidong
2009-10-07 16:20 ` Eric M. Ludlam
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-07 5:37 UTC (permalink / raw)
To: Phil Hagelberg; +Cc: emacs-devel
> The doc header at the top of pulse.el mentions the function
> pulse-enable-integration-advice, which has been removed presumably to
> conform to Emacs "no advice in core" standard. But the comment has not
> been updated.
>
> The patch below fixes this.
Thanks, applied.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Problems with EDE (was: CEDET merge)
2009-10-06 17:51 ` Chong Yidong
@ 2009-10-07 9:34 ` Sascha Wilde
2009-10-07 9:49 ` Problems with EDE Sascha Wilde
2009-10-08 22:21 ` Chong Yidong
0 siblings, 2 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-07 9:34 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric
Chong Yidong <cyd@stupidchicken.com> wrote:
> Sascha Wilde <wilde@sha-bang.de> writes:
>> However I still witness a bunch problems with my simple test cases.
[...]
> Please, report them here.
Summary:
Problems with EDE automake projects:
- necessary compiler detection is missing from generated configure.ac
- AUTHORS, NEWS, README, Changelog are regenerated on every build
Details for reproduction:
- emacs -Q
- M-x global-ede-mode RET
- M-x semantic-mode RET
- M-x make-directory RET /tmp/cedet-test1 RET
- C-x C-f /tmp/cedet-test1/test.c RET
- [In the buffer:]
#include <stdio.h>
int main () { puts("Hello EDE!"); }
- C-x C-s
- M-x ede-new RET
Project Type: Automake
Name: edetest
- C-c . t
Name: hello
Type: program
Add test.c to hello? (y or n) y
- C-c . c
I had to create the AUTHORS file for you. Ok? (y or n) y
[Same question for NEWS, README, Changelog, all answerde `y']
Now I get compilation output:
-*- mode: compilation; default-directory: "/tmp/cedet-test1/" -*-
Compilation started at Wed Oct 7 11:19:19
aclocal;automake --add-missing;autoreconf;./configure;
configure.ac:4: installing `./install-sh'
configure.ac:4: installing `./missing'
Makefile.am: installing `./INSTALL'
Makefile.am: installing `./COPYING' using GNU General Public License v3 file
Makefile.am: Consider adding the COPYING file to the version control system
Makefile.am: for your code, to avoid questions about which license your project uses.
configure.ac:5: required file `config.h.in' not found
Makefile.am: installing `./depcomp'
/usr/share/automake-1.11/am/depend2.am: am__fastdepCC does not appear in AM_CONDITIONAL
/usr/share/automake-1.11/am/depend2.am: The usual way to define `am__fastdepCC' is to add `AC_PROG_CC'
/usr/share/automake-1.11/am/depend2.am: to `configure.ac' and run `aclocal' and `autoconf' again.
/usr/share/automake-1.11/am/depend2.am: AMDEP does not appear in AM_CONDITIONAL
/usr/share/automake-1.11/am/depend2.am: The usual way to define `AMDEP' is to add one of the compiler tests
/usr/share/automake-1.11/am/depend2.am: AC_PROG_CC, AC_PROG_CXX, AC_PROG_CXX, AC_PROG_OBJC,
/usr/share/automake-1.11/am/depend2.am: AM_PROG_AS, AM_PROG_GCJ, AM_PROG_UPC
/usr/share/automake-1.11/am/depend2.am: to `configure.ac' and run `aclocal' and `autoconf' again.
Makefile.am: C source seen but `CC' is undefined
Makefile.am: The usual way to define `CC' is to add `AC_PROG_CC'
Makefile.am: to `configure.ac' and run `autoconf' again.
/usr/share/automake-1.11/am/depend2.am: am__fastdepCC does not appear in AM_CONDITIONAL
/usr/share/automake-1.11/am/depend2.am: The usual way to define `am__fastdepCC' is to add `AC_PROG_CC'
/usr/share/automake-1.11/am/depend2.am: to `configure.ac' and run `aclocal' and `autoconf' again.
/usr/share/automake-1.11/am/depend2.am: AMDEP does not appear in AM_CONDITIONAL
/usr/share/automake-1.11/am/depend2.am: The usual way to define `AMDEP' is to add one of the compiler tests
/usr/share/automake-1.11/am/depend2.am: AC_PROG_CC, AC_PROG_CXX, AC_PROG_CXX, AC_PROG_OBJC,
/usr/share/automake-1.11/am/depend2.am: AM_PROG_AS, AM_PROG_GCJ, AM_PROG_UPC
/usr/share/automake-1.11/am/depend2.am: to `configure.ac' and run `aclocal' and `autoconf' again.
Makefile.am: C source seen but `CC' is undefined
Makefile.am: The usual way to define `CC' is to add `AC_PROG_CC'
Makefile.am: to `configure.ac' and run `autoconf' again.
autoreconf: automake failed with exit status: 1
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
configure: creating ./config.status
config.status: error: cannot find input file: `Makefile.in'
Compilation exited abnormally with code 1 at Wed Oct 7 11:19:30
As the error messages show: there is AC_PROG_CC or any equivalent
missing from the generated configure.ac. After adding it manually:
- C-x b test.c RET
- C-c . c
Asks again for all files AUTHORS, NEWS, README and Changelog if they
should be created despite the fact that they are already there. Even
more: it readds and thereby duplicates the automatic generated entries
(for AUTHORS and NEWS).
Answering no to any of there "create foo" questions immediately
terminates the whole ede build process, which IMO is a bug, too.
The actually build runs now successfully.
--
Sascha Wilde
"Liebet eure Feinde, vielleicht schadet das ihrem Ruf"
(Stanislaw Jerzy Lec)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-07 9:34 ` Problems with EDE (was: CEDET merge) Sascha Wilde
@ 2009-10-07 9:49 ` Sascha Wilde
2009-10-07 16:32 ` Eric M. Ludlam
2009-10-08 20:58 ` Problems with EDE Sascha Wilde
2009-10-08 22:21 ` Chong Yidong
1 sibling, 2 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-07 9:49 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric
Summary:
Problems with EDE make projects:
- Target are not created correctly in Makefile:
Details for reproduction:
- emacs -Q
- M-x global-ede-mode RET
- M-x semantic-mode RET
- M-x make-directory RET /tmp/cedet-test2 RET
- C-x C-f /tmp/cedet-test2/test.c RET
- [In the buffer:]
#include <stdio.h>
int main () { puts("Hello EDE!"); }
- C-x C-s
- M-x ede-new RET
Project Type: Make
Name: edetest2
- C-c . t
Name: hello
Type: program
Add test.c to hello? (y or n) y
- C-c . c
Now I get compilation output:
-*- mode: compilation; default-directory: "/tmp/cedet-test2/" -*-
Compilation started at Wed Oct 7 11:47:00
make -f Makefile hello
make: *** No rule to make target `hello'. Stop.
Compilation exited abnormally with code 2 at Wed Oct 7 11:47:00
A short look in the generated Makefile shows that there is no explicit
target `hello' defined (although a target `all' is there and references
`hello').
cheers
sascha
--
Sascha Wilde
Lisp is the red pill.
-- John Fraser, comp.lang.lisp
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2009-10-07 5:37 ` Chong Yidong
@ 2009-10-07 16:20 ` Eric M. Ludlam
0 siblings, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-07 16:20 UTC (permalink / raw)
To: Chong Yidong; +Cc: Phil Hagelberg, emacs-devel
On Wed, 2009-10-07 at 01:37 -0400, Chong Yidong wrote:
> > The doc header at the top of pulse.el mentions the function
> > pulse-enable-integration-advice, which has been removed presumably to
> > conform to Emacs "no advice in core" standard. But the comment has not
> > been updated.
> >
> > The patch below fixes this.
>
> Thanks, applied.
>
While the feature specified which allows fcns such as goto-line to do a
pulse after the line has been gone to is certainly superfluous (I don't
use them), what would be he recommended way to make it possible to make
such changes w/out using advice?
I recognize that `beginning-of-defun' and friends discussed earlier
would be the model, but I can't imagine adding such replacement features
into every user facing command just in case.
For the pulse case, is there an interest in snazzing up the original
function list with pulsing, or is it too gratuitous to even contemplate?
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-07 9:49 ` Problems with EDE Sascha Wilde
@ 2009-10-07 16:32 ` Eric M. Ludlam
2009-10-08 1:51 ` Chong Yidong
2009-10-08 20:58 ` Problems with EDE Sascha Wilde
1 sibling, 1 reply; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-07 16:32 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, emacs-devel
I tried your sample w/ the non-integrated CEDET w/ a slightly older
Emacs 23, and the created Makefile was complete. I have tests similar
to this with Make and Automake that all run to completion also.
As such, I'd guess something didn't translate properly in the merge. I
can look into this, but it won't be soon.
Eric
On Wed, 2009-10-07 at 11:49 +0200, Sascha Wilde wrote:
> Summary:
> Problems with EDE make projects:
> - Target are not created correctly in Makefile:
>
> Details for reproduction:
> - emacs -Q
> - M-x global-ede-mode RET
> - M-x semantic-mode RET
> - M-x make-directory RET /tmp/cedet-test2 RET
> - C-x C-f /tmp/cedet-test2/test.c RET
> - [In the buffer:]
> #include <stdio.h>
> int main () { puts("Hello EDE!"); }
> - C-x C-s
> - M-x ede-new RET
> Project Type: Make
> Name: edetest2
> - C-c . t
> Name: hello
> Type: program
> Add test.c to hello? (y or n) y
> - C-c . c
>
> Now I get compilation output:
>
> -*- mode: compilation; default-directory: "/tmp/cedet-test2/" -*-
> Compilation started at Wed Oct 7 11:47:00
>
> make -f Makefile hello
> make: *** No rule to make target `hello'. Stop.
>
> Compilation exited abnormally with code 2 at Wed Oct 7 11:47:00
>
> A short look in the generated Makefile shows that there is no explicit
> target `hello' defined (although a target `all' is there and references
> `hello').
>
> cheers
> sascha
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-07 16:32 ` Eric M. Ludlam
@ 2009-10-08 1:51 ` Chong Yidong
2009-10-08 2:17 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-08 1:51 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> writes:
> I tried your sample w/ the non-integrated CEDET w/ a slightly older
> Emacs 23, and the created Makefile was complete. I have tests similar
> to this with Make and Automake that all run to completion also.
>
> As such, I'd guess something didn't translate properly in the merge. I
> can look into this, but it won't be soon.
Sorry, this was my mistake. While removing the use of ede-or in
source.el, I wrote the replacement form incorrectly. I've checked in a
fix.
The target is now printed correctly, but there is a different
compilation error; I'll investigate further.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 1:51 ` Chong Yidong
@ 2009-10-08 2:17 ` Chong Yidong
2009-10-08 9:53 ` Sascha Wilde
2009-10-08 12:04 ` Eric M. Ludlam
0 siblings, 2 replies; 194+ messages in thread
From: Chong Yidong @ 2009-10-08 2:17 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> The target is now printed correctly, but there is a different
> compilation error; I'll investigate further.
It seems the error occurs in upstream CEDET as well. Following Sascha's
"Make" project recipe, I get
make -f /home/cyd/tmp/Makefile all
gcc -c hello.c
ld -L. -o hello hello.o
ld: warning: cannot find entry symbol _start; defaulting to 0000000008048074
hello.o: In function `main':
hello.c:(.text+0x19): undefined reference to `puts'
make: *** [hello] Error 1
Why is EDE using ld rather than gcc to perform linking?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 2:17 ` Chong Yidong
@ 2009-10-08 9:53 ` Sascha Wilde
2009-10-08 20:51 ` Sascha Wilde
2009-10-08 12:04 ` Eric M. Ludlam
1 sibling, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-08 9:53 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric
Chong Yidong <cyd@stupidchicken.com> wrote:
> Chong Yidong <cyd@stupidchicken.com> writes:
>> The target is now printed correctly,
Thanks a lot for working on this. I can confirm, that compiling an
Automake Project now works.
But the problem with repeated creation of the documentation files
(AUTHRS, NEWS etc.) still persist.
And:
> It seems the error occurs in upstream CEDET as well. Following Sascha's
> "Make" project recipe, I get
>
> make -f /home/cyd/tmp/Makefile all
> gcc -c hello.c
> ld -L. -o hello hello.o
> ld: warning: cannot find entry symbol _start; defaulting to 0000000008048074
> hello.o: In function `main':
> hello.c:(.text+0x19): undefined reference to `puts'
> make: *** [hello] Error 1
I see this, too.
cheers
sascha
--
Sascha Wilde : "GUIs normally make it simple to accomplish simple
: actions and impossible to accomplish complex actions."
: (Doug Gwyn - 22/Jun/91 in comp.unix.wizards)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 2:17 ` Chong Yidong
2009-10-08 9:53 ` Sascha Wilde
@ 2009-10-08 12:04 ` Eric M. Ludlam
2009-10-08 13:38 ` Miles Bader
` (3 more replies)
1 sibling, 4 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-08 12:04 UTC (permalink / raw)
To: Chong Yidong; +Cc: Sascha Wilde, emacs-devel
On Wed, 2009-10-07 at 22:17 -0400, Chong Yidong wrote:
> Chong Yidong <cyd@stupidchicken.com> writes:
>
> > The target is now printed correctly, but there is a different
> > compilation error; I'll investigate further.
>
> It seems the error occurs in upstream CEDET as well. Following Sascha's
> "Make" project recipe, I get
>
> make -f /home/cyd/tmp/Makefile all
> gcc -c hello.c
> ld -L. -o hello hello.o
> ld: warning: cannot find entry symbol _start; defaulting to 0000000008048074
> hello.o: In function `main':
> hello.c:(.text+0x19): undefined reference to `puts'
> make: *** [hello] Error 1
>
> Why is EDE using ld rather than gcc to perform linking?
I wrote it in 1999, and at the time, that is what worked for me.
EDE actually will use a range of different linkers, and the ld one was
the first match. If you use:
M-x customize-target RET
you can select a new linker, such as a g++ linker, or the gfortran
linker. Looking in ede-proj-obj.el (ede/proj/obj.el ?) it is hopefully
obvious how to add new linkers here. I think my test suite I use uses c
++ instead, and thus gets a different linker. I apparently need to add
a new test. ;)
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 12:04 ` Eric M. Ludlam
@ 2009-10-08 13:38 ` Miles Bader
2009-10-08 13:46 ` Sascha Wilde
` (2 subsequent siblings)
3 siblings, 0 replies; 194+ messages in thread
From: Miles Bader @ 2009-10-08 13:38 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, Chong Yidong, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> writes:
>> Why is EDE using ld rather than gcc to perform linking?
>
> I wrote it in 1999, and at the time, that is what worked for me.
>
> EDE actually will use a range of different linkers, and the ld one was
> the first match.
$(CC) is probably the best choice if you don't have any more detailed information.
-Miles
--
Saa, shall we dance? (from a dance-class advertisement)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 12:04 ` Eric M. Ludlam
2009-10-08 13:38 ` Miles Bader
@ 2009-10-08 13:46 ` Sascha Wilde
2009-10-08 14:16 ` Chong Yidong
2009-10-08 14:11 ` Chong Yidong
2009-10-08 18:32 ` defalias customize-* in ede.el (was: Problems with EDE) Reiner Steib
3 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-08 13:46 UTC (permalink / raw)
To: eric; +Cc: Chong Yidong, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 350 bytes --]
"Eric M. Ludlam" <eric@siege-engine.com> wrote:
> Looking in ede-proj-obj.el (ede/proj/obj.el ?) it is hopefully
> obvious how to add new linkers here. I think my test suite I use uses c
> ++ instead, and thus gets a different linker. I apparently need to add
> a new test. ;)
Hi *,
how about the following patch? It fixes the problems for me.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 811 bytes --]
diff -r 1667bfa67b40 lisp/cedet/ede/proj-obj.el
--- a/lisp/cedet/ede/proj-obj.el Thu Oct 08 11:07:26 2009 +0200
+++ b/lisp/cedet/ede/proj-obj.el Thu Oct 08 15:20:44 2009 +0200
@@ -47,6 +47,7 @@
))
(availablelinkers :initform (ede-g++-linker
;; Add more linker thingies here.
+ ede-gcc-linker
ede-ld-linker
ede-gfortran-linker
))
@@ -231,6 +232,18 @@
:objectextention "")
"Linker needed for c++ programs.")
+(defvar ede-gcc-linker
+ (ede-linker
+ "ede-gcc-linker"
+ :name "gcc"
+ :variables '(("LD" . "gcc")
+ ("LD_LINK" .
+ "$(LD) $(LDFLAGS) -L. -o $@")
+ )
+ :commands '("$(LD_LINK) $^")
+ :objectextention "")
+ "Generic gcc linker.")
+
;;; The EDE object compiler
;;
(defmethod ede-proj-makefile-insert-variables ((this ede-object-compiler))
[-- Attachment #3: Type: text/plain, Size: 187 bytes --]
cheers
sascha
--
Sascha Wilde
"Computers are good at following instructions,
but not at reading your mind."
D. E. Knuth, The TeXbook, Addison-Wesley 1984, 1986, 1996, p. 9
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 12:04 ` Eric M. Ludlam
2009-10-08 13:38 ` Miles Bader
2009-10-08 13:46 ` Sascha Wilde
@ 2009-10-08 14:11 ` Chong Yidong
2009-10-08 14:16 ` David Kastrup
2009-10-14 1:56 ` Eric M. Ludlam
2009-10-08 18:32 ` defalias customize-* in ede.el (was: Problems with EDE) Reiner Steib
3 siblings, 2 replies; 194+ messages in thread
From: Chong Yidong @ 2009-10-08 14:11 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> writes:
> I wrote it in 1999, and at the time, that is what worked for me.
>
> EDE actually will use a range of different linkers, and the ld one was
> the first match. If you use:
>
> M-x customize-target RET
>
> you can select a new linker, such as a g++ linker, or the gfortran
> linker. Looking in ede-proj-obj.el (ede/proj/obj.el ?) it is hopefully
> obvious how to add new linkers here. I think my test suite I use uses c
> ++ instead, and thus gets a different linker. I apparently need to add
> a new test. ;)
I see. I added a new ede-gcc-linker, and the Make project now compiles
properly. Here's a patch for your source tree:
*** cedet/ede/ede-proj-obj.el.~1.15.~ 2009-08-18 19:56:57.000000000 -0400
--- cedet/ede/ede-proj-obj.el 2009-10-08 10:10:29.000000000 -0400
***************
*** 48,58 ****
;; fortran or pascal can be added here
))
(availablelinkers :initform (ede-g++-linker
! ;; Add more linker thingies here.
! ede-ld-linker
ede-gfortran-linker
))
! (sourcetype :initform (ede-source-c
ede-source-c++
ede-source-f77
ede-source-f90
--- 48,59 ----
;; fortran or pascal can be added here
))
(availablelinkers :initform (ede-g++-linker
! ede-gcc-linker
ede-gfortran-linker
+ ede-ld-linker
+ ;; Add more linker thingies here.
))
! (sourcetype :initform (ede-source-c
ede-source-c++
ede-source-f77
ede-source-f90
***************
*** 109,114 ****
--- 110,125 ----
:uselinker t)
"Compiler for C sourcecode.")
+ (defvar ede-gcc-linker
+ (ede-linker
+ "ede-gcc-linker"
+ :name "gcc"
+ :sourcetype '(ede-source-c)
+ :variables '(("C_LINK" . "$(CC) $(CFLAGS) $(LDFLAGS) -L."))
+ :commands '("$(C_LINK) -o $@ $^")
+ :objectextention "")
+ "Linker for C sourcecode.")
+
(defvar ede-source-c++
(ede-sourcecode "ede-source-c++"
:name "C++"
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 14:11 ` Chong Yidong
@ 2009-10-08 14:16 ` David Kastrup
2009-10-14 1:56 ` Eric M. Ludlam
1 sibling, 0 replies; 194+ messages in thread
From: David Kastrup @ 2009-10-08 14:16 UTC (permalink / raw)
To: emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> + (defvar ede-gcc-linker
> + (ede-linker
> + "ede-gcc-linker"
> + :name "gcc"
> + :sourcetype '(ede-source-c)
> + :variables '(("C_LINK" . "$(CC) $(CFLAGS) $(LDFLAGS) -L."))
> + :commands '("$(C_LINK) -o $@ $^")
> + :objectextention "")
> + "Linker for C sourcecode.")
That's a cc-linker, not a gcc-linker.
--
David Kastrup
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 13:46 ` Sascha Wilde
@ 2009-10-08 14:16 ` Chong Yidong
2009-10-08 19:46 ` Sascha Wilde
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-08 14:16 UTC (permalink / raw)
To: Sascha Wilde; +Cc: emacs-devel, eric
Sascha Wilde <wilde@sha-bang.de> writes:
> how about the following patch? It fixes the problems for me.
Great minds think alike, I see.
^ permalink raw reply [flat|nested] 194+ messages in thread
* defalias customize-* in ede.el (was: Problems with EDE)
2009-10-08 12:04 ` Eric M. Ludlam
` (2 preceding siblings ...)
2009-10-08 14:11 ` Chong Yidong
@ 2009-10-08 18:32 ` Reiner Steib
3 siblings, 0 replies; 194+ messages in thread
From: Reiner Steib @ 2009-10-08 18:32 UTC (permalink / raw)
To: eric; +Cc: emacs-devel
On Thu, Oct 08 2009, Eric M. Ludlam wrote:
> EDE actually will use a range of different linkers, and the ld one was
> the first match. If you use:
>
> M-x customize-target RET
Are these alias a good idea? The names seem to generic to me.
,----[ lisp/cedet/ede.el ]
| (defalias 'customize-project 'ede-customize-project)
| [...]
| (defalias 'customize-target 'ede-customize-current-target)
`----
Bye, Reiner.
--
,,,
(o o)
---ooO-(_)-Ooo--- | PGP key available | http://rsteib.home.pages.de/
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 14:16 ` Chong Yidong
@ 2009-10-08 19:46 ` Sascha Wilde
0 siblings, 0 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-08 19:46 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric
Chong Yidong <cyd@stupidchicken.com> wrote:
> Sascha Wilde <wilde@sha-bang.de> writes:
>
>> how about the following patch? It fixes the problems for me.
>
> Great minds think alike, I see.
:-)
Anyway, please note David's comment. I agree with him, that your code
should be renamed to ede-cc-linker (or otherwise be more specific, like
mine).
cheers
sascha
--
Sascha Wilde
Nothing is fool-proof to a sufficiently talented fool.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 9:53 ` Sascha Wilde
@ 2009-10-08 20:51 ` Sascha Wilde
0 siblings, 0 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-08 20:51 UTC (permalink / raw)
To: Chong Yidong; +Cc: eric, emacs-devel
Sascha Wilde <wilde@sha-bang.de> wrote:
> But the problem with repeated creation of the documentation files
> (AUTHRS, NEWS etc.) still persist.
Additional observation: this problem disappears when re-visiting an
Automake EDE project, where these files already exist, with an fresh
started emacs.
So I'd guess it's related to some kind of caching.
sascha
--
Sascha Wilde : "Der Nicht-Denkende glaubt, dass niemand denkt,
: der Denkende weiss es!"
: (Gabriel Laub)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-07 9:49 ` Problems with EDE Sascha Wilde
2009-10-07 16:32 ` Eric M. Ludlam
@ 2009-10-08 20:58 ` Sascha Wilde
2009-10-08 22:15 ` Chong Yidong
2009-10-09 12:34 ` Sascha Wilde
1 sibling, 2 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-08 20:58 UTC (permalink / raw)
To: Chong Yidong; +Cc: eric, emacs-devel
Yet another one:
ede-make-dist does not work for ede automake projects:
-*- mode: compilation; default-directory: "/tmp/cedet-test1/" -*-
Compilation started at Thu Oct 8 22:52:13
make -f /tmp/cedet-test1/Makefile.am dist
make: *** No rule to make target `dist'. Stop.
Compilation exited abnormally with code 2 at Thu Oct 8 22:52:13
Using the Makefile.am is obviously wrong. The actual Makefile contains
an working dist target.
For ede make projects ede-make-dist works.
cheers
sascha
--
Sascha Wilde
... mein Opa [...] würde an dieser Stelle zu Dir sagen: Junge, such Dir
ne Frau, bau Dir ein Haus, mach ein Kind und laß' die Finger von dem Zeug,
das Du gerade machst. -- Michael Winklhofer in d.a.e.auktionshaeuser
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 20:58 ` Problems with EDE Sascha Wilde
@ 2009-10-08 22:15 ` Chong Yidong
2009-10-09 8:03 ` Eli Zaretskii
` (2 more replies)
2009-10-09 12:34 ` Sascha Wilde
1 sibling, 3 replies; 194+ messages in thread
From: Chong Yidong @ 2009-10-08 22:15 UTC (permalink / raw)
To: eric; +Cc: Sascha Wilde, emacs-devel
Sascha Wilde <wilde@sha-bang.de> writes:
> Yet another one:
> ede-make-dist does not work for ede automake projects:
>
> -*- mode: compilation; default-directory: "/tmp/cedet-test1/" -*-
> Compilation started at Thu Oct 8 22:52:13
>
> make -f /tmp/cedet-test1/Makefile.am dist
> make: *** No rule to make target `dist'. Stop.
>
> Compilation exited abnormally with code 2 at Thu Oct 8 22:52:13
>
> Using the Makefile.am is obviously wrong. The actual Makefile contains
> an working dist target.
This is a bug in project-make-dist (the filename comparison forgets that
ede-proj-dist-makefile returns a full filename). I've checked in a fix
into the trunk.
Eric, here's a patch for your tree (it also includes a stylistic
correction, to use expand-file-name instead of concat to generate full
filenames).
* cedet/ede/ede-proj.el (project-make-dist, project-compile-project):
Fix filename test.
(ede-proj-dist-makefile): Use expand-file-name instead of concat
to expand file names.
*** cedet/ede/ede-proj.el.~1.62.~ 2009-08-18 19:56:57.000000000 -0400
--- cedet/ede/ede-proj.el 2009-10-08 18:12:20.000000000 -0400
***************
*** 453,459 ****
(not (y-or-n-p "Dist file already exists. Rebuild? ")))
(error "Try `ede-update-version' before making a distribution"))
(ede-proj-setup-buildenvironment this)
! (if (string= pm "Makefile.am") (setq pm "Makefile"))
(compile (concat ede-make-command " -f " pm " dist"))
))
--- 453,461 ----
(not (y-or-n-p "Dist file already exists. Rebuild? ")))
(error "Try `ede-update-version' before making a distribution"))
(ede-proj-setup-buildenvironment this)
! (if (string= (file-name-nondirectory pm) "Makefile.am")
! (setq pm (expand-file-name "Makefile"
! (file-name-directory pm))))
(compile (concat ede-make-command " -f " pm " dist"))
))
***************
*** 470,476 ****
(let ((pm (ede-proj-dist-makefile proj))
(default-directory (file-name-directory (oref proj file))))
(ede-proj-setup-buildenvironment proj)
! (if (string= pm "Makefile.am") (setq pm "Makefile"))
(compile (concat ede-make-command" -f " pm " all"))))
;;; Target type specific compilations/debug
--- 472,480 ----
(let ((pm (ede-proj-dist-makefile proj))
(default-directory (file-name-directory (oref proj file))))
(ede-proj-setup-buildenvironment proj)
! (if (string= (file-name-nondirectory pm) "Makefile.am")
! (setq pm (expand-file-name "Makefile"
! (file-name-directory pm))))
(compile (concat ede-make-command" -f " pm " all"))))
;;; Target type specific compilations/debug
***************
*** 599,609 ****
(concat (file-name-directory (oref this file))
"Makefile.am"))
((eq (oref this makefile-type) 'Makefile.in)
! (concat (file-name-directory (oref this file))
! "Makefile.in"))
((object-assoc "Makefile" 'makefile (oref this targets))
! (concat (file-name-directory (oref this file))
! "Makefile"))
(t
(let ((targets (oref this targets)))
(while (and targets
--- 603,613 ----
(concat (file-name-directory (oref this file))
"Makefile.am"))
((eq (oref this makefile-type) 'Makefile.in)
! (expand-file-name "Makefile.in"
! (file-name-directory (oref this file))))
((object-assoc "Makefile" 'makefile (oref this targets))
! (expand-file-name "Makefile"
! (file-name-directory (oref this file))))
(t
(let ((targets (oref this targets)))
(while (and targets
***************
*** 612,619 ****
'ede-proj-target-makefile)))
(setq targets (cdr targets)))
(if targets (oref (car targets) makefile)
! (concat (file-name-directory (oref this file))
! "Makefile"))))))
(defun ede-proj-regenerate ()
"Regenerate Makefiles for and edeproject project."
--- 616,623 ----
'ede-proj-target-makefile)))
(setq targets (cdr targets)))
(if targets (oref (car targets) makefile)
! (expand-file-name "Makefile"
! (file-name-directory (oref this file))))))))
(defun ede-proj-regenerate ()
"Regenerate Makefiles for and edeproject project."
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-07 9:34 ` Problems with EDE (was: CEDET merge) Sascha Wilde
2009-10-07 9:49 ` Problems with EDE Sascha Wilde
@ 2009-10-08 22:21 ` Chong Yidong
1 sibling, 0 replies; 194+ messages in thread
From: Chong Yidong @ 2009-10-08 22:21 UTC (permalink / raw)
To: Sascha Wilde; +Cc: emacs-devel, eric
Sascha Wilde <wilde@sha-bang.de> writes:
> - C-x b test.c RET
> - C-c . c
>
> Asks again for all files AUTHORS, NEWS, README and Changelog if they
> should be created despite the fact that they are already there. Even
> more: it readds and thereby duplicates the automatic generated entries
> (for AUTHORS and NEWS).
>
> Answering no to any of there "create foo" questions immediately
> terminates the whole ede build process, which IMO is a bug, too.
It is indeed obnoxious for EDE to create the file *first*, then asks the
user "I created this file, OK?" It should ask first. I'll see what I
can do to improve this.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 22:15 ` Chong Yidong
@ 2009-10-09 8:03 ` Eli Zaretskii
2009-10-09 12:15 ` Sascha Wilde
2009-10-14 2:34 ` Eric M. Ludlam
2 siblings, 0 replies; 194+ messages in thread
From: Eli Zaretskii @ 2009-10-09 8:03 UTC (permalink / raw)
To: Chong Yidong; +Cc: wilde, emacs-devel, eric
> From: Chong Yidong <cyd@stupidchicken.com>
> Date: Thu, 08 Oct 2009 18:15:55 -0400
> Cc: Sascha Wilde <wilde@sha-bang.de>, emacs-devel@gnu.org
>
> ! (if (string= (file-name-nondirectory pm) "Makefile.am")
> ! (setq pm (expand-file-name "Makefile"
> ! (file-name-directory pm))))
Possible trouble alert! Comparing file names with string= might mean
trouble on case-insensitive filesystems, if one happens to have
something like "makefile.am" by some chance.
I didn't yet have time to play with CEDET, so maybe the problem does
not exist. Would someone please check?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 22:15 ` Chong Yidong
2009-10-09 8:03 ` Eli Zaretskii
@ 2009-10-09 12:15 ` Sascha Wilde
2009-10-15 3:45 ` Eric M. Ludlam
2009-10-14 2:34 ` Eric M. Ludlam
2 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-09 12:15 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric
Chong Yidong <cyd@stupidchicken.com> wrote:
> Sascha Wilde <wilde@sha-bang.de> writes:
>
>> Yet another one:
>> ede-make-dist does not work for ede automake projects:
[...]
> This is a bug in project-make-dist (the filename comparison forgets that
> ede-proj-dist-makefile returns a full filename). I've checked in a fix
> into the trunk.
Thanks. That fixed it for me!
And made me discover the next problem:
The generated configure script as packed into the dist tar depends on
Project.ede, but that isn't part of the distribution:
$ tar xzvf cedettest/ede-test-1.0.tar.gz
$ cd ede-test-1.0
$ ./configure
configure: error: cannot find sources (Project.ede) in . or ..
I'm not sure which is the bug, the dependency or that Project.ede is not
distributed...
cheers
sascha
--
Sascha Wilde
I've always figured UNIX is a utility to be run under emacs.
-- Charles R. Martin
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 20:58 ` Problems with EDE Sascha Wilde
2009-10-08 22:15 ` Chong Yidong
@ 2009-10-09 12:34 ` Sascha Wilde
2009-10-09 12:42 ` Sascha Wilde
2009-10-09 17:10 ` Andreas Schwab
1 sibling, 2 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-09 12:34 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric
And two more problems... ;-)
With target type "sharedobject" ede projects build shared libraries.
Using an ede automake project building such an target fails in tow
respects:
1. Setup of the autotools infrastructure:
-*- mode: compilation; default-directory: "/tmp/cedettest/" -*-
Compilation started at Fri Oct 9 14:23:30
aclocal;automake --add-missing;autoreconf;
configure.ac:8: required file `./ltmain.sh' not found
configure.ac:8: required file `./ltmain.sh' not found
autoreconf: automake failed with exit status: 1
Compilation exited abnormally with code 1 at Fri Oct 9 14:24:03
This might be actually due to an automake bug, because IMO
`automake --add-missing' should generate ltmain.sh -- anyway it
doesn't (tested with automake 1.10.1 on Debian Lenny).
Calling libtoolize manually fixes this.
2. After hot-fixing (1) compilation still fails:
make: *** No rule to make target `libfoo.so'. Stop
This is due the fact, that using libtool/automake the target for the
library is libfoo.la, not libfoo.so.
Manual compile with `M-x compile RET make libfoo.la' works.
cheers
sascha
--
Sascha Wilde : xedit? Das sieht zwar wie vi aus als könne es nix, aber im
: Gegensatz zu vi kann es wirklich nix und nix ist noch geschönt!
: (Michael Core in dafc)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 12:34 ` Sascha Wilde
@ 2009-10-09 12:42 ` Sascha Wilde
2009-10-10 0:24 ` Eric M. Ludlam
2009-10-15 3:05 ` Eric M. Ludlam
2009-10-09 17:10 ` Andreas Schwab
1 sibling, 2 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-09 12:42 UTC (permalink / raw)
To: Chong Yidong; +Cc: eric, emacs-devel
Sascha Wilde <wilde@sha-bang.de> wrote:
> With target type "sharedobject" ede projects build shared libraries.
> Using an ede automake project building such an target fails in tow
> respects:
Building sharedobjects in ede make projects fails, too:
-*- mode: compilation; default-directory: "/tmp/cedet-test5/" -*-
Compilation started at Fri Oct 9 14:39:45
make -f Makefile libfoo.so
gcc -march=athlon-xp -O3 -c greet.c
gcc -march=athlon-xp -O3 -L. -o libfoo.so greet.o
/usr/lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [libfoo.so] Error 1
Compilation exited abnormally with code 2 at Fri Oct 9 14:39:45
sascha
--
Sascha Wilde
"There is no reason why anyone would want a computer in their home"
Ken Olson, DEC, 1977
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 12:34 ` Sascha Wilde
2009-10-09 12:42 ` Sascha Wilde
@ 2009-10-09 17:10 ` Andreas Schwab
2009-10-09 18:08 ` Chong Yidong
1 sibling, 1 reply; 194+ messages in thread
From: Andreas Schwab @ 2009-10-09 17:10 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, eric, emacs-devel
Sascha Wilde <wilde@sha-bang.de> writes:
> 1. Setup of the autotools infrastructure:
>
> -*- mode: compilation; default-directory: "/tmp/cedettest/" -*-
> Compilation started at Fri Oct 9 14:23:30
>
> aclocal;automake --add-missing;autoreconf;
That should be replaced by a single call to "autoreconf -i".
> This might be actually due to an automake bug, because IMO
> `automake --add-missing' should generate ltmain.sh -- anyway it
> doesn't (tested with automake 1.10.1 on Debian Lenny).
ltmain.sh is part of libtool, not automake.
> Calling libtoolize manually fixes this.
Since autoreconf is not called with --install, it won't run libtoolize.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 17:10 ` Andreas Schwab
@ 2009-10-09 18:08 ` Chong Yidong
2009-10-09 18:54 ` Sascha Wilde
2009-10-09 19:46 ` Eric M. Ludlam
0 siblings, 2 replies; 194+ messages in thread
From: Chong Yidong @ 2009-10-09 18:08 UTC (permalink / raw)
To: Sascha Wilde; +Cc: eric, Andreas Schwab, emacs-devel
Andreas Schwab <schwab@linux-m68k.org> writes:
> Sascha Wilde <wilde@sha-bang.de> writes:
>
>> 1. Setup of the autotools infrastructure:
>>
>> -*- mode: compilation; default-directory: "/tmp/cedettest/" -*-
>> Compilation started at Fri Oct 9 14:23:30
>>
>> aclocal;automake --add-missing;autoreconf;
>
> That should be replaced by a single call to "autoreconf -i".
>
>> This might be actually due to an automake bug, because IMO
>> `automake --add-missing' should generate ltmain.sh -- anyway it
>> doesn't (tested with automake 1.10.1 on Debian Lenny).
>
> ltmain.sh is part of libtool, not automake.
>
>> Calling libtoolize manually fixes this.
>
> Since autoreconf is not called with --install, it won't run libtoolize.
Sascha, could you try with this patch?
*** emacs/lisp/cedet/ede/pconf.el.~1.3.~ 2009-10-03 13:42:57.000000000 -0400
--- emacs/lisp/cedet/ede/pconf.el 2009-10-09 14:07:14.000000000 -0400
***************
*** 99,111 ****
(ede-map-targets this 'ede-proj-tweak-autoconf)))
;; Now save
(save-buffer)
! ;; Verify aclocal
! (setq postcmd "aclocal;")
! ;; Always add missing files as needed.
! (setq postcmd (concat postcmd "automake --add-missing;"))
!
! ;; Always do autoreconf
! (setq postcmd (concat postcmd "autoreconf;"))
;; Verify a bunch of files that are required by automake.
(ede-proj-configure-test-required-file this "AUTHORS")
(ede-proj-configure-test-required-file this "NEWS")
--- 99,105 ----
(ede-map-targets this 'ede-proj-tweak-autoconf)))
;; Now save
(save-buffer)
! (setq postcmd "autoreconf -i;")
;; Verify a bunch of files that are required by automake.
(ede-proj-configure-test-required-file this "AUTHORS")
(ede-proj-configure-test-required-file this "NEWS")
Diff finished. Fri Oct 9 14:08:11 2009
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 18:08 ` Chong Yidong
@ 2009-10-09 18:54 ` Sascha Wilde
2009-10-09 19:14 ` Sascha Wilde
2009-10-09 19:46 ` Eric M. Ludlam
1 sibling, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-09 18:54 UTC (permalink / raw)
To: Chong Yidong; +Cc: eric, Andreas Schwab, emacs-devel
Chong Yidong <cyd@stupidchicken.com> wrote:
> Andreas Schwab <schwab@linux-m68k.org> writes:
>> Sascha Wilde <wilde@sha-bang.de> writes:
>>
>>> 1. Setup of the autotools infrastructure:
>>>
>>> -*- mode: compilation; default-directory: "/tmp/cedettest/" -*-
>>> Compilation started at Fri Oct 9 14:23:30
>>>
>>> aclocal;automake --add-missing;autoreconf;
>>
>> That should be replaced by a single call to "autoreconf -i".
[...]
> Sascha, could you try with this patch?
Yes, this works for me. The libtool files are now created as expected.
It still tries to compile the wrong target (libfoo.so instead of
libfoo.la) but that wasn't subject of your patch.
cheers
sascha
--
Sascha Wilde
If you think technology can solve your problems you don't understand
technology and you don't understand your problems. (Bruce Schneier)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 18:54 ` Sascha Wilde
@ 2009-10-09 19:14 ` Sascha Wilde
2009-10-09 20:33 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-09 19:14 UTC (permalink / raw)
To: Chong Yidong; +Cc: eric, Andreas Schwab, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 202 bytes --]
Sascha Wilde <wilde@sha-bang.de> wrote:
> It still tries to compile the wrong target (libfoo.so instead of
> libfoo.la) but that wasn't subject of your patch.
This path fixes the target issue for me:
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 717 bytes --]
diff -r a31c0d5082f6 lisp/cedet/ede/proj-shared.el
--- a/lisp/cedet/ede/proj-shared.el Fri Oct 09 15:49:09 2009 +0200
+++ b/lisp/cedet/ede/proj-shared.el Fri Oct 09 21:11:54 2009 +0200
@@ -150,7 +150,10 @@
"Return the name of the main target for THIS target."
;; We need some platform gunk to make the .so change to .sl, or .a,
;; depending on the platform we are going to compile against.
- (concat "lib" (ede-name this) ".so"))
+ (concat "lib" (ede-name this)
+ (if (eq (oref (ede-target-parent this) makefile-type) 'Makefile.am)
+ ".la"
+ ".so")))
(defmethod ede-proj-makefile-sourcevar ((this ede-proj-target-makefile-shared-object))
"Return the variable name for THIS's sources."
[-- Attachment #3: Type: text/plain, Size: 113 bytes --]
cheers
sascha
--
Sascha Wilde
Hi! I'm a .signature *virus*! Copy me into your ~/.signature to help me spread!
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 18:08 ` Chong Yidong
2009-10-09 18:54 ` Sascha Wilde
@ 2009-10-09 19:46 ` Eric M. Ludlam
1 sibling, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-09 19:46 UTC (permalink / raw)
To: Chong Yidong; +Cc: Sascha Wilde, Andreas Schwab, emacs-devel
I tried this patch in my test-suite and it worked for me also.
I very recently updated the autoconf stuff, prompted by needing better
test suites, and when I read about autoreconf, I tried it but did not
know about the -i option. It does indeed simplify things a lot.
Eric
On Fri, 2009-10-09 at 14:08 -0400, Chong Yidong wrote:
> Andreas Schwab <schwab@linux-m68k.org> writes:
>
> > Sascha Wilde <wilde@sha-bang.de> writes:
> >
> >> 1. Setup of the autotools infrastructure:
> >>
> >> -*- mode: compilation; default-directory: "/tmp/cedettest/" -*-
> >> Compilation started at Fri Oct 9 14:23:30
> >>
> >> aclocal;automake --add-missing;autoreconf;
> >
> > That should be replaced by a single call to "autoreconf -i".
> >
> >> This might be actually due to an automake bug, because IMO
> >> `automake --add-missing' should generate ltmain.sh -- anyway it
> >> doesn't (tested with automake 1.10.1 on Debian Lenny).
> >
> > ltmain.sh is part of libtool, not automake.
> >
> >> Calling libtoolize manually fixes this.
> >
> > Since autoreconf is not called with --install, it won't run libtoolize.
>
> Sascha, could you try with this patch?
>
> *** emacs/lisp/cedet/ede/pconf.el.~1.3.~ 2009-10-03 13:42:57.000000000 -0400
> --- emacs/lisp/cedet/ede/pconf.el 2009-10-09 14:07:14.000000000 -0400
> ***************
> *** 99,111 ****
> (ede-map-targets this 'ede-proj-tweak-autoconf)))
> ;; Now save
> (save-buffer)
> ! ;; Verify aclocal
> ! (setq postcmd "aclocal;")
> ! ;; Always add missing files as needed.
> ! (setq postcmd (concat postcmd "automake --add-missing;"))
> !
> ! ;; Always do autoreconf
> ! (setq postcmd (concat postcmd "autoreconf;"))
> ;; Verify a bunch of files that are required by automake.
> (ede-proj-configure-test-required-file this "AUTHORS")
> (ede-proj-configure-test-required-file this "NEWS")
> --- 99,105 ----
> (ede-map-targets this 'ede-proj-tweak-autoconf)))
> ;; Now save
> (save-buffer)
> ! (setq postcmd "autoreconf -i;")
> ;; Verify a bunch of files that are required by automake.
> (ede-proj-configure-test-required-file this "AUTHORS")
> (ede-proj-configure-test-required-file this "NEWS")
>
> Diff finished. Fri Oct 9 14:08:11 2009
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 19:14 ` Sascha Wilde
@ 2009-10-09 20:33 ` Chong Yidong
2009-10-09 21:19 ` Sascha Wilde
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-09 20:33 UTC (permalink / raw)
To: Sascha Wilde; +Cc: eric, Andreas Schwab, emacs-devel
Sascha Wilde <wilde@sha-bang.de> writes:
> This path fixes the target issue for me:
>
> diff -r a31c0d5082f6 lisp/cedet/ede/proj-shared.el
> --- a/lisp/cedet/ede/proj-shared.el Fri Oct 09 15:49:09 2009 +0200
> +++ b/lisp/cedet/ede/proj-shared.el Fri Oct 09 21:11:54 2009 +0200
> @@ -150,7 +150,10 @@
> "Return the name of the main target for THIS target."
> ;; We need some platform gunk to make the .so change to .sl, or .a,
> ;; depending on the platform we are going to compile against.
> - (concat "lib" (ede-name this) ".so"))
> + (concat "lib" (ede-name this)
> + (if (eq (oref (ede-target-parent this) makefile-type) 'Makefile.am)
> + ".la"
> + ".so")))
Is this generally right, though? As the comment notes, there may be
situations where .a is the correct extension, no?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 20:33 ` Chong Yidong
@ 2009-10-09 21:19 ` Sascha Wilde
2009-10-14 2:43 ` Eric M. Ludlam
0 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-09 21:19 UTC (permalink / raw)
To: Chong Yidong; +Cc: eric, Andreas Schwab, emacs-devel
Chong Yidong <cyd@stupidchicken.com> wrote:
> Sascha Wilde <wilde@sha-bang.de> writes:
>
>> This path fixes the target issue for me:
>>
>> diff -r a31c0d5082f6 lisp/cedet/ede/proj-shared.el
>> --- a/lisp/cedet/ede/proj-shared.el Fri Oct 09 15:49:09 2009 +0200
>> +++ b/lisp/cedet/ede/proj-shared.el Fri Oct 09 21:11:54 2009 +0200
>> @@ -150,7 +150,10 @@
>> "Return the name of the main target for THIS target."
>> ;; We need some platform gunk to make the .so change to .sl, or .a,
>> ;; depending on the platform we are going to compile against.
>> - (concat "lib" (ede-name this) ".so"))
>> + (concat "lib" (ede-name this)
>> + (if (eq (oref (ede-target-parent this) makefile-type) 'Makefile.am)
>> + ".la"
>> + ".so")))
>
> Is this generally right, though? As the comment notes, there may be
> situations where .a is the correct extension, no?
In case of automake/libtool it shouldn't matter as libtool knows the
dirty details of platform specific naming conventions. You ask for the
meta file .la and get .so .sl .a .dyn or what ever you need. So I'd
say: my code is portable.
For the case of make projects (the ".so" case in the above code) it's a
different story: there the .so is actually a bold assumption and wrong
on some platforms, but that was the case before my patch, too. So the
comment only describes an todo.
Actually I would suggest to use libtool even for the ede make project
variant where possible, as trying to get things right for all possible
platforms would mean to duplicate the affords of libtool to great
extends.
sascha
--
Sascha Wilde : The most exciting phrase to hear in science, the one
: that heralds new discoveries, is not "Eureka!" (I found
: it!) but "That's funny ..." -- Isaac Asimov
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 12:42 ` Sascha Wilde
@ 2009-10-10 0:24 ` Eric M. Ludlam
2009-10-10 7:34 ` Sascha Wilde
2009-10-15 3:05 ` Eric M. Ludlam
1 sibling, 1 reply; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-10 0:24 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, emacs-devel
Hi Sascha,
I appreciate the investigations you've been doing. So you know, the
only things I can guarantee to work are the tests running in the CEDET
repository. They are in cedet/tests/. This test suite creates code off
in /tmp and runs against Make and Automake targets.
Ideally, when I fix things, I try to add tests for them. I only caught
the testing bug for CEDET long after I wrote most of EDE, so there is
much left to do here.
I'm interested in working with you to get these types of issues fixed,
but I know I won't have much time till after the Punkin Chunk which is
Nov 6/7/8 of this year.
Thanks
Eric
On Fri, 2009-10-09 at 14:42 +0200, Sascha Wilde wrote:
> Sascha Wilde <wilde@sha-bang.de> wrote:
> > With target type "sharedobject" ede projects build shared libraries.
> > Using an ede automake project building such an target fails in tow
> > respects:
>
> Building sharedobjects in ede make projects fails, too:
>
> -*- mode: compilation; default-directory: "/tmp/cedet-test5/" -*-
> Compilation started at Fri Oct 9 14:39:45
>
> make -f Makefile libfoo.so
> gcc -march=athlon-xp -O3 -c greet.c
> gcc -march=athlon-xp -O3 -L. -o libfoo.so greet.o
> /usr/lib/crt1.o: In function `_start':
> (.text+0x18): undefined reference to `main'
> collect2: ld returned 1 exit status
> make: *** [libfoo.so] Error 1
>
> Compilation exited abnormally with code 2 at Fri Oct 9 14:39:45
>
> sascha
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-10 0:24 ` Eric M. Ludlam
@ 2009-10-10 7:34 ` Sascha Wilde
0 siblings, 0 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-10 7:34 UTC (permalink / raw)
To: eric; +Cc: Chong Yidong, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> wrote:
[...]
> I'm interested in working with you to get these types of issues fixed,
> but I know I won't have much time till after the Punkin Chunk which is
> Nov 6/7/8 of this year.
No problem. Just drop me a line when you are available again.
cheers
sascha
--
Sascha Wilde
Hauptfunktion einer GUI ist es IMHO, die dadurch verlorene Zeit durch
einen höheren Spaß-Faktor zu kompensieren. Essentiell ein
Computerspiel. -- Rainer Weikusat in d.c.o.u.d
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 14:11 ` Chong Yidong
2009-10-08 14:16 ` David Kastrup
@ 2009-10-14 1:56 ` Eric M. Ludlam
1 sibling, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-14 1:56 UTC (permalink / raw)
To: Chong Yidong; +Cc: Sascha Wilde, emacs-devel
Thanks,
I finally applied this to my repository as well (plus modifications also
mentioned on this thread.)
Eric
On Thu, 2009-10-08 at 10:11 -0400, Chong Yidong wrote:
> "Eric M. Ludlam" <eric@siege-engine.com> writes:
>
> > I wrote it in 1999, and at the time, that is what worked for me.
> >
> > EDE actually will use a range of different linkers, and the ld one was
> > the first match. If you use:
> >
> > M-x customize-target RET
> >
> > you can select a new linker, such as a g++ linker, or the gfortran
> > linker. Looking in ede-proj-obj.el (ede/proj/obj.el ?) it is hopefully
> > obvious how to add new linkers here. I think my test suite I use uses c
> > ++ instead, and thus gets a different linker. I apparently need to add
> > a new test. ;)
>
> I see. I added a new ede-gcc-linker, and the Make project now compiles
> properly. Here's a patch for your source tree:
>
> *** cedet/ede/ede-proj-obj.el.~1.15.~ 2009-08-18 19:56:57.000000000 -0400
> --- cedet/ede/ede-proj-obj.el 2009-10-08 10:10:29.000000000 -0400
> ***************
> *** 48,58 ****
> ;; fortran or pascal can be added here
> ))
> (availablelinkers :initform (ede-g++-linker
> ! ;; Add more linker thingies here.
> ! ede-ld-linker
> ede-gfortran-linker
> ))
> ! (sourcetype :initform (ede-source-c
> ede-source-c++
> ede-source-f77
> ede-source-f90
> --- 48,59 ----
> ;; fortran or pascal can be added here
> ))
> (availablelinkers :initform (ede-g++-linker
> ! ede-gcc-linker
> ede-gfortran-linker
> + ede-ld-linker
> + ;; Add more linker thingies here.
> ))
> ! (sourcetype :initform (ede-source-c
> ede-source-c++
> ede-source-f77
> ede-source-f90
> ***************
> *** 109,114 ****
> --- 110,125 ----
> :uselinker t)
> "Compiler for C sourcecode.")
>
> + (defvar ede-gcc-linker
> + (ede-linker
> + "ede-gcc-linker"
> + :name "gcc"
> + :sourcetype '(ede-source-c)
> + :variables '(("C_LINK" . "$(CC) $(CFLAGS) $(LDFLAGS) -L."))
> + :commands '("$(C_LINK) -o $@ $^")
> + :objectextention "")
> + "Linker for C sourcecode.")
> +
> (defvar ede-source-c++
> (ede-sourcecode "ede-source-c++"
> :name "C++"
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-08 22:15 ` Chong Yidong
2009-10-09 8:03 ` Eli Zaretskii
2009-10-09 12:15 ` Sascha Wilde
@ 2009-10-14 2:34 ` Eric M. Ludlam
2 siblings, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-14 2:34 UTC (permalink / raw)
To: Chong Yidong; +Cc: Sascha Wilde, emacs-devel
Thanks for the patch. I have applied it to my repository.
I've added cedet/cedet-ediff.el to my repository which lets me diff
between the Emacs CVS repository and the CEDET repository more easilly,
which allowed me to also get the spelling fix someone checked in.
If you would like to just diff the Emacs repository, I'll be able to use
my new tool to get your patch merged into my repository more easily now.
Thanks
Eric
On Thu, 2009-10-08 at 18:15 -0400, Chong Yidong wrote:
> Sascha Wilde <wilde@sha-bang.de> writes:
>
> > Yet another one:
> > ede-make-dist does not work for ede automake projects:
> >
> > -*- mode: compilation; default-directory: "/tmp/cedet-test1/" -*-
> > Compilation started at Thu Oct 8 22:52:13
> >
> > make -f /tmp/cedet-test1/Makefile.am dist
> > make: *** No rule to make target `dist'. Stop.
> >
> > Compilation exited abnormally with code 2 at Thu Oct 8 22:52:13
> >
> > Using the Makefile.am is obviously wrong. The actual Makefile contains
> > an working dist target.
>
> This is a bug in project-make-dist (the filename comparison forgets that
> ede-proj-dist-makefile returns a full filename). I've checked in a fix
> into the trunk.
>
> Eric, here's a patch for your tree (it also includes a stylistic
> correction, to use expand-file-name instead of concat to generate full
> filenames).
>
>
> * cedet/ede/ede-proj.el (project-make-dist, project-compile-project):
> Fix filename test.
> (ede-proj-dist-makefile): Use expand-file-name instead of concat
> to expand file names.
>
> *** cedet/ede/ede-proj.el.~1.62.~ 2009-08-18 19:56:57.000000000 -0400
> --- cedet/ede/ede-proj.el 2009-10-08 18:12:20.000000000 -0400
> ***************
> *** 453,459 ****
> (not (y-or-n-p "Dist file already exists.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 21:19 ` Sascha Wilde
@ 2009-10-14 2:43 ` Eric M. Ludlam
0 siblings, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-14 2:43 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, Andreas Schwab, emacs-devel
On Fri, 2009-10-09 at 23:19 +0200, Sascha Wilde wrote:
> Chong Yidong <cyd@stupidchicken.com> wrote:
> > Sascha Wilde <wilde@sha-bang.de> writes:
> Actually I would suggest to use libtool even for the ede make project
> variant where possible, as trying to get things right for all possible
> platforms would mean to duplicate the affords of libtool to great
> extends.
There is libtool support for Make projects already, it is just not the
default.
The attached patch against my repository shows that you just need to
swap the order to make libtool the default.
I realize that there is more work to be done for this target type, in
terms of querying the compiler to figure out what the target name is,
but just doing this swap would let you experiment with it and see what
else needs to be done.
You could also customize the shared object target, and just select
libtool as the compiler you want to use instead of changing the code.
Eric
--------------------------
*** ede-proj-shared.el.~1.11.~ 2009-10-09 15:49:22.000000000 -0400
--- ede-proj-shared.el 2009-10-13 22:39:18.000000000 -0400
***************
*** 34,43 ****
;;; Code:
(defclass ede-proj-target-makefile-shared-object
(ede-proj-target-makefile-program)
! ((availablecompilers :initform (ede-gcc-shared-compiler
! ede-gcc-libtool-shared-compiler
! ede-g++-shared-compiler
ede-g++-libtool-shared-compiler
))
(ldflags :custom (repeat (string :tag "Libtool flag"))
:documentation
--- 34,43 ----
;;; Code:
(defclass ede-proj-target-makefile-shared-object
(ede-proj-target-makefile-program)
! ((availablecompilers :initform (ede-gcc-libtool-shared-compiler
! ede-gcc-shared-compiler
ede-g++-libtool-shared-compiler
+ ede-g++-shared-compiler
))
(ldflags :custom (repeat (string :tag "Libtool flag"))
:documentation
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 12:42 ` Sascha Wilde
2009-10-10 0:24 ` Eric M. Ludlam
@ 2009-10-15 3:05 ` Eric M. Ludlam
1 sibling, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-15 3:05 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, emacs-devel
On Fri, 2009-10-09 at 14:42 +0200, Sascha Wilde wrote:
> Sascha Wilde <wilde@sha-bang.de> wrote:
> > With target type "sharedobject" ede projects build shared libraries.
> > Using an ede automake project building such an target fails in tow
> > respects:
>
> Building sharedobjects in ede make projects fails, too:
>
> -*- mode: compilation; default-directory: "/tmp/cedet-test5/" -*-
> Compilation started at Fri Oct 9 14:39:45
>
> make -f Makefile libfoo.so
> gcc -march=athlon-xp -O3 -c greet.c
> gcc -march=athlon-xp -O3 -L. -o libfoo.so greet.o
> /usr/lib/crt1.o: In function `_start':
> (.text+0x18): undefined reference to `main'
> collect2: ld returned 1 exit status
> make: *** [libfoo.so] Error 1
>
I have checked in changes to the CEDET repository for the following:
* shared objects for Make now use libtool by default.
* Found a set of arguments for C++ and libtool that seem to work.
* updated my tests to exercise this case for C++.
One caveat is that you can't mix libtool and other C++ targets code in
the same Project due to some pretty basic conflicts with the inference
rules created.
I'm also not sure about the C version.
In any case, any assistance folks can provide on how best to use libtool
in these cases would be appreciated, as I am not an expert in this area.
Thanks
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-09 12:15 ` Sascha Wilde
@ 2009-10-15 3:45 ` Eric M. Ludlam
2009-10-15 8:58 ` Sascha Wilde
0 siblings, 1 reply; 194+ messages in thread
From: Eric M. Ludlam @ 2009-10-15 3:45 UTC (permalink / raw)
To: Sascha Wilde; +Cc: Chong Yidong, emacs-devel
On Fri, 2009-10-09 at 14:15 +0200, Sascha Wilde wrote:
> Chong Yidong <cyd@stupidchicken.com> wrote:
> > Sascha Wilde <wilde@sha-bang.de> writes:
> >
> >> Yet another one:
> >> ede-make-dist does not work for ede automake projects:
> [...]
> > This is a bug in project-make-dist (the filename comparison forgets that
> > ede-proj-dist-makefile returns a full filename). I've checked in a fix
> > into the trunk.
>
> Thanks. That fixed it for me!
>
> And made me discover the next problem:
> The generated configure script as packed into the dist tar depends on
> Project.ede, but that isn't part of the distribution:
>
> $ tar xzvf cedettest/ede-test-1.0.tar.gz
> $ cd ede-test-1.0
> $ ./configure
> configure: error: cannot find sources (Project.ede) in . or ..
>
> I'm not sure which is the bug, the dependency or that Project.ede is not
> distributed...
I checked in some changes in the CEDET repository to make this work. I
also fixed a problem it had with automake projects with more than one
directory level.
I hadn't thought to put a test of the "dist" into my test suite. This
seems like a good idea.
Thanks
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-15 3:45 ` Eric M. Ludlam
@ 2009-10-15 8:58 ` Sascha Wilde
2009-10-15 14:38 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Sascha Wilde @ 2009-10-15 8:58 UTC (permalink / raw)
To: eric; +Cc: Chong Yidong, emacs-devel
"Eric M. Ludlam" <eric@siege-engine.com> wrote:
[missing Project.ede in distribution archive]
> I checked in some changes in the CEDET repository to make this work. I
> also fixed a problem it had with automake projects with more than one
> directory level.
Thanks a lot for this and all the other improvements you did. I can't
test them though, as I'm using GNU-Emacs CVS HEAD, not your CEDET repo.
Who feels in charge to merge this changes into HEAD?
I'll happily test them once they arrived there. ;-)
cheers
sascha
--
Sascha Wilde : "The PROPER way to handle HTML postings is to cancel
the article, then hire a hitman to kill the poster, his wife and kids,
and fuck his dog and smash his computer into little bits. Anything
more is just extremism." -- Paul Tomblin
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-15 8:58 ` Sascha Wilde
@ 2009-10-15 14:38 ` Chong Yidong
2009-10-17 14:27 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-15 14:38 UTC (permalink / raw)
To: Sascha Wilde; +Cc: emacs-devel, eric
Sascha Wilde <wilde@sha-bang.de> writes:
> Who feels in charge to merge this changes into HEAD?
> I'll happily test them once they arrived there. ;-)
I'll do the merge over the weekend.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-15 14:38 ` Chong Yidong
@ 2009-10-17 14:27 ` Chong Yidong
2009-10-20 13:22 ` Sascha Wilde
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2009-10-17 14:27 UTC (permalink / raw)
To: Sascha Wilde; +Cc: eric, emacs-devel
Chong Yidong <cyd@stupidchicken.com> writes:
> Sascha Wilde <wilde@sha-bang.de> writes:
>
>> Who feels in charge to merge this changes into HEAD?
>> I'll happily test them once they arrived there. ;-)
>
> I'll do the merge over the weekend.
Done.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: Problems with EDE
2009-10-17 14:27 ` Chong Yidong
@ 2009-10-20 13:22 ` Sascha Wilde
0 siblings, 0 replies; 194+ messages in thread
From: Sascha Wilde @ 2009-10-20 13:22 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric
Chong Yidong <cyd@stupidchicken.com> wrote:
> Chong Yidong <cyd@stupidchicken.com> writes:
>> Sascha Wilde <wilde@sha-bang.de> writes:
>>
>>> Who feels in charge to merge this changes into HEAD?
>>> I'll happily test them once they arrived there. ;-)
>>
>> I'll do the merge over the weekend.
>
> Done.
Thanks a lot!
On a quick test I can confirm, that
- Sharedobject targets in make-projects build now with libtool
(which works as expected)
- Annoying re-asking for creation of existing supplemental files has
gone.
- Make distribution works as expected.
- Building from the created distribution tars works.
Thanks to Eric and Chong for fixing all this. Next I'll switch to bug
reporting mode again. ;-)
cheers
sascha
--
Sascha Wilde
"Liebet eure Feinde, vielleicht schadet das ihrem Ruf"
(Stanislaw Jerzy Lec)
^ permalink raw reply [flat|nested] 194+ messages in thread
* progress-reporter (was: CEDET merge)
2009-10-02 17:46 ` Phil Hagelberg
@ 2010-03-17 18:24 ` Michael Albinus
0 siblings, 0 replies; 194+ messages in thread
From: Michael Albinus @ 2010-03-17 18:24 UTC (permalink / raw)
To: Phil Hagelberg; +Cc: Chong Yidong, scymtym, Stefan Monnier, emacs-devel
Phil Hagelberg <phil@hagelb.org> writes:
> Stefan Monnier <monnier@iro.umontreal.ca> writes:
>
>>> I made it so that you must use progress-reporter-pulse to update a
>>> pulsing reporter, but I realized afterwards that it would be easy enough
>>> to have progress-reporter-update check to see if the reporter is a
>>> pulsing one or not and call the correct function underneath without the
>>> caller having to think about it.
>>
>>> If you think this is a good idea I can make the change.
>>
>> Yes, that would be even better, thank you,
>
> I've attached the patches that implement this. Pulsing reporters can use
> progress-reporter-update like normal ones and can have their messages
> changed using progress-reporter-force-update.
I'm wondering whether this patch could be applied to the trunk. I'd
like to use it in Tramp, for huge copies, and alike.
> thanks!
> Phil
Best regards, Michael.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-26 20:24 ` CEDET merge (was: Feature freeze on October 1) David Engster
@ 2012-09-30 13:55 ` David Engster
2012-09-30 14:10 ` David Engster
` (4 more replies)
0 siblings, 5 replies; 194+ messages in thread
From: David Engster @ 2012-09-30 13:55 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, emacs-devel, Eric M. Ludlam
[-- Attachment #1: Type: text/plain, Size: 1990 bytes --]
David Engster writes:
> Stefan Monnier writes:
>>> the other way round. I think I should be able to have our 'to-emacs'
>>> branch ready till October 1st, which could then be merged in.
>>
>> This merge is important, yes. Please let us know if you can't make it
>> for October 1st.
>
> Please do not commit this patch yet, since it definitely needs some
> further testing. My plan is to check the code with our test suite, which
> will need a few tweaks first to work with stock Emacs, though.
I've checked the new code base with our test suite and fixed a bunch of
stuff. Everything's working now except for a few minor things, so I
think the branch is now ready for merging.
You can obtain a patch file from our 'to-emacs' branch (for details see
my last mail), but I've also attached it to this message so everyone can
check it easily. There's no ChangeLog yet, so if you want to check the
logs you still need our 'to-emacs' branch.
Please take a look at the issues I raised in my previous mail, since
they still apply (esp. regarding checking for papers).
Additionally, I've also regenerated the Elisp parsers from the updated
grammar files. This converted some more explicit copyright ranges like
Copyright (C) 2002-2004, 2007, 2010-2012 Free Software Foundation, Inc
to a simple range like this
Copyright (C) 2002-2012 Free Software Foundation, Inc.
Is this acceptable? Also, it removed the 'Author: David Ponce' line from
cedet/semantic/grammar.el, but I think it didn't make sense anyway since
it is a generated file (from admin/grammars/grammar.wy, where he's still
credited).
I left the grammars and parser generator in admin/grammars for now, but
IMO the generator bovine-grammar.el and wisent-grammar.el should
eventually be moved to their proper locations underneath lisp/. The main
grammar generation is already in lisp/semantic/grammar.el and hence was
in Emacs all the time; the two files above are just refinements for the
two different grammar styles.
-David
[-- Attachment #2: cedet-update-patch.diff.gz --]
[-- Type: application/octet-stream, Size: 102025 bytes --]
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-30 13:55 ` CEDET merge David Engster
@ 2012-09-30 14:10 ` David Engster
2012-09-30 18:58 ` Glenn Morris
` (3 subsequent siblings)
4 siblings, 0 replies; 194+ messages in thread
From: David Engster @ 2012-09-30 14:10 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, emacs-devel, Eric M. Ludlam
David Engster writes:
> Also, it removed the 'Author: David Ponce' line from
> cedet/semantic/grammar.el,
This should read: cedet/semantic/grammar-wy.el.
Also, I should mention that this patch introduces two new files:
etc/srecode/c.srt and etc/srecode/ede-autoconf.srt, which will have to
be added to the repository.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-30 13:55 ` CEDET merge David Engster
2012-09-30 14:10 ` David Engster
@ 2012-09-30 18:58 ` Glenn Morris
2012-09-30 19:17 ` Paul Eggert
2012-10-01 3:44 ` Chong Yidong
` (2 subsequent siblings)
4 siblings, 1 reply; 194+ messages in thread
From: Glenn Morris @ 2012-09-30 18:58 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, emacs-devel, Eric M. Ludlam
David Engster wrote:
> Additionally, I've also regenerated the Elisp parsers from the updated
> grammar files. This converted some more explicit copyright ranges like
>
> Copyright (C) 2002-2004, 2007, 2010-2012 Free Software Foundation, Inc
>
> to a simple range like this
>
> Copyright (C) 2002-2012 Free Software Foundation, Inc.
>
> Is this acceptable?
If the former is the true statement, that the latter is not an
acceptable alternative, no. If the former was for some reason incorrect
and the latter is correct, then obviously it is ok.
http://www.gnu.org/prep/maintain/maintain.html#Copyright-Notices
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-30 18:58 ` Glenn Morris
@ 2012-09-30 19:17 ` Paul Eggert
2012-10-01 0:16 ` Glenn Morris
0 siblings, 1 reply; 194+ messages in thread
From: Paul Eggert @ 2012-09-30 19:17 UTC (permalink / raw)
To: Glenn Morris; +Cc: Eric M. Ludlam, Chong Yidong, Stefan Monnier, emacs-devel
>> > This converted some more explicit copyright ranges like
>> >
>> > Copyright (C) 2002-2004, 2007, 2010-2012 Free Software Foundation, Inc
>> >
>> > to a simple range like this
>> >
>> > Copyright (C) 2002-2012 Free Software Foundation, Inc.
>> >
>> > Is this acceptable?
> If the former is the true statement, that the latter is not an
> acceptable alternative, no. If the former was for some reason incorrect
> and the latter is correct, then obviously it is ok.
If we're talking about Emacs, "2002-2012" is a
true statement, is acceptable, and is what the
GNU coding standards currently recommend.
New versions of Emacs were published (at least via
a revision-control system) in all those years, and
there's a "NOTE ON COPYRIGHT YEARS" in the README
file that explains all this, so the GNU rules are being
followed for copyright years if the file says just
"2002-2012".
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-30 19:17 ` Paul Eggert
@ 2012-10-01 0:16 ` Glenn Morris
0 siblings, 0 replies; 194+ messages in thread
From: Glenn Morris @ 2012-10-01 0:16 UTC (permalink / raw)
To: Paul Eggert; +Cc: Eric M. Ludlam, Chong Yidong, Stefan Monnier, emacs-devel
Paul Eggert wrote:
> If we're talking about Emacs, "2002-2012" is a true statement, is
> acceptable, and is what the GNU coding standards currently recommend.
> New versions of Emacs were published (at least via a revision-control
> system) in all those years, and there's a "NOTE ON COPYRIGHT YEARS" in
> the README file that explains all this, so the GNU rules are being
> followed for copyright years if the file says just "2002-2012".
CEDET was not part of Emacs until 2009, so it depends on when/how CEDET
was released before that.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-30 13:55 ` CEDET merge David Engster
2012-09-30 14:10 ` David Engster
2012-09-30 18:58 ` Glenn Morris
@ 2012-10-01 3:44 ` Chong Yidong
2012-10-01 11:44 ` Eric M. Ludlam
2012-10-01 15:17 ` David Engster
2012-10-04 19:32 ` David Engster
2012-11-08 12:32 ` Alex Ott
4 siblings, 2 replies; 194+ messages in thread
From: Chong Yidong @ 2012-10-01 3:44 UTC (permalink / raw)
To: emacs-devel; +Cc: Eric M. Ludlam, Jan Moringen
David Engster <deng@randomsample.de> writes:
> I've checked the new code base with our test suite and fixed a bunch of
> stuff. Everything's working now except for a few minor things, so I
> think the branch is now ready for merging.
>
> You can obtain a patch file from our 'to-emacs' branch (for details see
> my last mail), but I've also attached it to this message so everyone can
> check it easily. There's no ChangeLog yet, so if you want to check the
> logs you still need our 'to-emacs' branch.
OK, I will perform the merge soon. Thanks for all your work.
> I cannot check for FSF papers, but I've been careful to always ask,
> and I'm sure the same applies to Eric and others who can commit to
> CEDET. Still, please double-check. A 'bzr log -n0 -r 8208' will give
> you a list of the commits from the merge.
The papers appear to be in order.
I assume that the scymtym <scymtym@gmmx.net> listed in your commit logs
is a pseudonym for Jan Moringen (who does have papers). Let me know if
that is not correct.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-01 3:44 ` Chong Yidong
@ 2012-10-01 11:44 ` Eric M. Ludlam
2012-10-01 15:17 ` David Engster
1 sibling, 0 replies; 194+ messages in thread
From: Eric M. Ludlam @ 2012-10-01 11:44 UTC (permalink / raw)
To: Chong Yidong; +Cc: Jan Moringen, emacs-devel
On 09/30/2012 11:44 PM, Chong Yidong wrote:
> David Engster<deng@randomsample.de> writes:
>
>> I've checked the new code base with our test suite and fixed a bunch of
>> stuff. Everything's working now except for a few minor things, so I
>> think the branch is now ready for merging.
>>
>> You can obtain a patch file from our 'to-emacs' branch (for details see
>> my last mail), but I've also attached it to this message so everyone can
>> check it easily. There's no ChangeLog yet, so if you want to check the
>> logs you still need our 'to-emacs' branch.
>
> OK, I will perform the merge soon. Thanks for all your work.
>
>> I cannot check for FSF papers, but I've been careful to always ask,
>> and I'm sure the same applies to Eric and others who can commit to
>> CEDET. Still, please double-check. A 'bzr log -n0 -r 8208' will give
>> you a list of the commits from the merge.
>
> The papers appear to be in order.
>
> I assume that the scymtym<scymtym@gmmx.net> listed in your commit logs
> is a pseudonym for Jan Moringen (who does have papers). Let me know if
> that is not correct.
Yes, that is Jan.
If you have other email questions, there is a list in
cedet-update-changelog.el at the root of the CEDET tree.
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-01 3:44 ` Chong Yidong
2012-10-01 11:44 ` Eric M. Ludlam
@ 2012-10-01 15:17 ` David Engster
2012-10-01 17:48 ` Chong Yidong
1 sibling, 1 reply; 194+ messages in thread
From: David Engster @ 2012-10-01 15:17 UTC (permalink / raw)
To: Chong Yidong; +Cc: Eric M. Ludlam, emacs-devel
Chong Yidong writes:
> David Engster <deng@randomsample.de> writes:
>
>> I've checked the new code base with our test suite and fixed a bunch of
>> stuff. Everything's working now except for a few minor things, so I
>> think the branch is now ready for merging.
>>
>> You can obtain a patch file from our 'to-emacs' branch (for details see
>> my last mail), but I've also attached it to this message so everyone can
>> check it easily. There's no ChangeLog yet, so if you want to check the
>> logs you still need our 'to-emacs' branch.
>
> OK, I will perform the merge soon. Thanks for all your work.
Unfortunately, I see now that I forgot to remove some defadvices. After
applying the patch, please remove the two defadvices for hideif from
semantic/bovine/c.el. We have to see if we somehow can implement this
feature using hooks, or maybe we have to remove the semantical
hideif-feature altogether.
Also, I merged lots of stuff from senator.el (including some defadvices)
which shouldn't land in Emacs. So for now, I would suggest to simply
revert senator.el after the patch is applied. I think Eric wanted to
remove senator.el at some point in time, but I guess we don't have a
good replacement yet...?
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-01 15:17 ` David Engster
@ 2012-10-01 17:48 ` Chong Yidong
2012-10-01 17:56 ` Chong Yidong
2012-10-02 15:24 ` Chong Yidong
0 siblings, 2 replies; 194+ messages in thread
From: Chong Yidong @ 2012-10-01 17:48 UTC (permalink / raw)
To: emacs-devel; +Cc: Eric M. Ludlam
[-- Attachment #1: Type: text/plain, Size: 1186 bytes --]
David Engster <deng@randomsample.de> writes:
> Unfortunately, I see now that I forgot to remove some defadvices. After
> applying the patch, please remove the two defadvices for hideif from
> semantic/bovine/c.el. We have to see if we somehow can implement this
> feature using hooks, or maybe we have to remove the semantical
> hideif-feature altogether.
>
> Also, I merged lots of stuff from senator.el (including some defadvices)
> which shouldn't land in Emacs. So for now, I would suggest to simply
> revert senator.el after the patch is applied. I think Eric wanted to
> remove senator.el at some point in time, but I guess we don't have a
> good replacement yet...?
I've done the merge, omitting senator and the defadvices as you
suggested.
To replace the defadvice, it is acceptable to just change the code of
hif-defined and hif-lookup directly to refer to
semantic-c-takeover-hideif (if it is bound); no need to use a hook.
Feel free to submit a patch, or I'll get around to it when I have the
time.
Attached is a patch of leftovers, consisting of a few whitespace
cleanups and file header fixes. Please apply to the to-emacs branch or
wherever is appropriate. Thanks.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: cedet-back.patch --]
[-- Type: text/x-diff, Size: 16644 bytes --]
=== modified file 'lisp/cedet/cedet.el'
*** lisp/cedet/cedet.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/cedet.el 2012-10-01 17:26:33 +0000
***************
*** 44,51 ****
(cedet ,cedet-version "common" "common" )
(eieio "1.4" nil "eieio" )
(semantic "2.1" nil "semantic/doc")
! (srecode "1.1" nil "srecode" )
! (ede "1.1" nil "ede" )
(speedbar "1.0.4" nil "speedbar" )
(cogre "1.1" nil "cogre" )
(cedet-contrib "1.1" "contrib" nil )
--- 44,51 ----
(cedet ,cedet-version "common" "common" )
(eieio "1.4" nil "eieio" )
(semantic "2.1" nil "semantic/doc")
! (srecode "1.1" nil "srecode" )
! (ede "1.1" nil "ede" )
(speedbar "1.0.4" nil "speedbar" )
(cogre "1.1" nil "cogre" )
(cedet-contrib "1.1" "contrib" nil )
=== modified file 'lisp/cedet/ede.el'
*** lisp/cedet/ede.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/ede.el 2012-10-01 17:26:44 +0000
***************
*** 382,390 ****
(oset (ede-current-project) configuration-default newconfig)
(message "%s will now build in %s mode."
(object-name (ede-current-project))
! newconfig)
! )
!
(defun ede-customize-forms-menu (menu-def)
"Create a menu of the project, and targets that can be customized.
--- 382,388 ----
(oset (ede-current-project) configuration-default newconfig)
(message "%s will now build in %s mode."
(object-name (ede-current-project))
! newconfig))
(defun ede-customize-forms-menu (menu-def)
"Create a menu of the project, and targets that can be customized.
***************
*** 879,885 ****
(project-add-file target (buffer-file-name))
(setq ede-object nil)
!
;; Setup buffer local variables.
(ede-initialize-state-current-buffer)
--- 877,883 ----
(project-add-file target (buffer-file-name))
(setq ede-object nil)
!
;; Setup buffer local variables.
(ede-initialize-state-current-buffer)
***************
*** 1424,1430 ****
;; This is a heavy hammer, but will apply variables properly
;; based on stacking between the toplevel and child projects.
(ede-map-buffers 'ede-apply-project-local-variables)
!
value))
(defun ede-apply-project-local-variables (&optional buffer)
--- 1422,1428 ----
;; This is a heavy hammer, but will apply variables properly
;; based on stacking between the toplevel and child projects.
(ede-map-buffers 'ede-apply-project-local-variables)
!
value))
(defun ede-apply-project-local-variables (&optional buffer)
=== modified file 'lisp/cedet/ede/auto.el'
*** lisp/cedet/ede/auto.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/ede/auto.el 2012-10-01 17:26:36 +0000
***************
*** 35,41 ****
(declare-function ede-add-project-to-global-list "ede")
(defclass ede-project-autoload-dirmatch ()
! ((fromconfig :initarg :fromconfig
:initform nil
:documentation
"A config file within which the match pattern lives.")
--- 35,41 ----
(declare-function ede-add-project-to-global-list "ede")
(defclass ede-project-autoload-dirmatch ()
! ((fromconfig :initarg :fromconfig
:initform nil
:documentation
"A config file within which the match pattern lives.")
***************
*** 70,76 ****
;; Error for wierd stuff
(t (error "Unknown dirmatch type.")))))
!
(defmethod ede-do-dirmatch ((dirmatch ede-project-autoload-dirmatch) file)
"Does DIRMATCH match the filename FILE."
--- 70,76 ----
;; Error for wierd stuff
(t (error "Unknown dirmatch type.")))))
!
(defmethod ede-do-dirmatch ((dirmatch ede-project-autoload-dirmatch) file)
"Does DIRMATCH match the filename FILE."
***************
*** 274,280 ****
(not (ede-dirmatch-installed dirmatch)))
(setq callfcn nil)
;; Other types of dirmatch:
! (when (and
;; If the Emacs Lisp file handling this project hasn't
;; been loaded, we will use the quick dirmatch feature.
(not (featurep (oref this file)))
--- 274,280 ----
(not (ede-dirmatch-installed dirmatch)))
(setq callfcn nil)
;; Other types of dirmatch:
! (when (and
;; If the Emacs Lisp file handling this project hasn't
;; been loaded, we will use the quick dirmatch feature.
(not (featurep (oref this file)))
***************
*** 292,298 ****
(when callfcn
(condition-case nil
(funcall rootfcn file)
! (error
(funcall rootfcn))))
))))
--- 292,298 ----
(when callfcn
(condition-case nil
(funcall rootfcn file)
! (error
(funcall rootfcn))))
))))
=== modified file 'lisp/cedet/ede/linux.el'
*** lisp/cedet/ede/linux.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/ede/linux.el 2012-10-01 17:26:43 +0000
***************
*** 302,305 ****
;; generated-autoload-load-name: "ede/linux"
;; End:
! ;;; ede-linux.el ends here
--- 302,305 ----
;; generated-autoload-load-name: "ede/linux"
;; End:
! ;;; ede/linux.el ends here
=== modified file 'lisp/cedet/ede/proj-elisp.el'
*** lisp/cedet/ede/proj-elisp.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/ede/proj-elisp.el 2012-10-01 17:26:38 +0000
***************
*** 36,43 ****
(keybindings :initform nil)
(phony :initform t)
(sourcetype :initform '(ede-source-emacs))
! (availablecompilers :initform '(ede-emacs-compiler
! ede-xemacs-compiler))
(aux-packages :initarg :aux-packages
:initform nil
:type list
--- 36,42 ----
(keybindings :initform nil)
(phony :initform t)
(sourcetype :initform '(ede-source-emacs))
! (availablecompilers :initform '(ede-emacs-compiler ede-xemacs-compiler))
(aux-packages :initarg :aux-packages
:initform nil
:type list
=== modified file 'lisp/cedet/semantic/bovine/c.el'
*** lisp/cedet/semantic/bovine/c.el 2012-09-30 08:28:41 +0000
--- lisp/cedet/semantic/bovine/c.el 2012-10-01 17:26:48 +0000
***************
*** 459,479 ****
(defvar semantic-c-takeover-hideif nil
"Non-nil when Semantic is taking over hideif features.")
! (defadvice hif-defined (around semantic-c activate)
! "Is the variable defined?"
! (if semantic-c-takeover-hideif
! (setq ad-return-value
! (semantic-c-hideif-defined (ad-get-arg 0)))
! ad-do-it))
! (defadvice hif-lookup (around semantic-c activate)
! "Is the argument defined? Return true or false."
! (let ((ans nil))
! (when semantic-c-takeover-hideif
! (setq ans (semantic-c-hideif-lookup (ad-get-arg 0))))
! (if (null ans)
! ad-do-it
! (setq ad-return-value ans))))
;;; #if macros
;;
--- 459,479 ----
(defvar semantic-c-takeover-hideif nil
"Non-nil when Semantic is taking over hideif features.")
! ;; (defadvice hif-defined (around semantic-c activate)
! ;; "Is the variable defined?"
! ;; (if semantic-c-takeover-hideif
! ;; (setq ad-return-value
! ;; (semantic-c-hideif-defined (ad-get-arg 0)))
! ;; ad-do-it))
! ;; (defadvice hif-lookup (around semantic-c activate)
! ;; "Is the argument defined? Return true or false."
! ;; (let ((ans nil))
! ;; (when semantic-c-takeover-hideif
! ;; (setq ans (semantic-c-hideif-lookup (ad-get-arg 0))))
! ;; (if (null ans)
! ;; ad-do-it
! ;; (setq ad-return-value ans))))
;;; #if macros
;;
=== modified file 'lisp/cedet/semantic/bovine/make-by.el'
*** lisp/cedet/semantic/bovine/make-by.el 2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/bovine/make-by.el 2012-10-01 17:26:47 +0000
***************
*** 1,6 ****
;;; semantic/bovine/make-by.el --- Generated parser support file
! ;; Copyright (C) 1999-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
--- 1,6 ----
;;; semantic/bovine/make-by.el --- Generated parser support file
! ;; Copyright (C) 1999-2004, 2008-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
=== modified file 'lisp/cedet/semantic/bovine/scm-by.el'
*** lisp/cedet/semantic/bovine/scm-by.el 2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/bovine/scm-by.el 2012-10-01 17:26:46 +0000
***************
*** 1,6 ****
;;; semantic/bovine/scm-by.el --- Generated parser support file
! ;; Copyright (C) 2001-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
--- 1,6 ----
;;; semantic/bovine/scm-by.el --- Generated parser support file
! ;; Copyright (C) 2001, 2003, 2009-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
=== modified file 'lisp/cedet/semantic/grammar-wy.el'
*** lisp/cedet/semantic/grammar-wy.el 2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/grammar-wy.el 2012-10-01 17:27:09 +0000
***************
*** 1,6 ****
;;; semantic/grammar-wy.el --- Generated parser support file
! ;; Copyright (C) 2002-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
--- 1,6 ----
;;; semantic/grammar-wy.el --- Generated parser support file
! ;; Copyright (C) 2002-2004, 2009-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
=== modified file 'lisp/cedet/semantic/tag-ls.el'
*** lisp/cedet/semantic/tag-ls.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/semantic/tag-ls.el 2012-10-01 17:26:49 +0000
***************
*** 114,120 ****
taglist1 (cdr taglist1)
taglist2 (cdr taglist2)))
ans))
!
;; The attributes are not the same?
((not (equal value1 value2))
nil)
--- 114,120 ----
taglist1 (cdr taglist1)
taglist2 (cdr taglist2)))
ans))
!
;; The attributes are not the same?
((not (equal value1 value2))
nil)
=== modified file 'lisp/cedet/semantic/wisent/javat-wy.el'
*** lisp/cedet/semantic/wisent/javat-wy.el 2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/wisent/javat-wy.el 2012-10-01 17:27:11 +0000
***************
*** 1,6 ****
;;; semantic/wisent/javat-wy.el --- Generated parser support file
! ;; Copyright (C) 2002-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
--- 1,6 ----
;;; semantic/wisent/javat-wy.el --- Generated parser support file
! ;; Copyright (C) 2002, 2007, 2009-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
=== modified file 'lisp/cedet/semantic/wisent/js-wy.el'
*** lisp/cedet/semantic/wisent/js-wy.el 2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/wisent/js-wy.el 2012-10-01 17:27:09 +0000
***************
*** 1,6 ****
;;; semantic/wisent/js-wy.el --- Generated parser support file
! ;; Copyright (C) 2005-2012 Free Software Foundation, Inc.
;; Copyright (C) 1998-2011 Ecma International.
;; This file is part of GNU Emacs.
--- 1,6 ----
;;; semantic/wisent/js-wy.el --- Generated parser support file
! ;; Copyright (C) 2005, 2009-2012 Free Software Foundation, Inc.
;; Copyright (C) 1998-2011 Ecma International.
;; This file is part of GNU Emacs.
=== modified file 'lisp/cedet/semantic/wisent/python.el'
*** lisp/cedet/semantic/wisent/python.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/semantic/wisent/python.el 2012-10-01 17:27:10 +0000
***************
*** 393,399 ****
(cons "static"
(semantic-tag-get-attribute tag :typemodifiers))))
! ;; TODO
;; + check for decorators classmethod
;; + check for operators
tag)
--- 393,399 ----
(cons "static"
(semantic-tag-get-attribute tag :typemodifiers))))
! ;; TODO
;; + check for decorators classmethod
;; + check for operators
tag)
***************
*** 445,451 ****
(setq expand (cons (semantic-tag-clone tag E) expand)))
(setq expand (nreverse expand)))
)))
!
\f
;;; Overridden Semantic API.
--- 445,451 ----
(setq expand (cons (semantic-tag-clone tag E) expand)))
(setq expand (nreverse expand)))
)))
!
\f
;;; Overridden Semantic API.
=== modified file 'lisp/cedet/srecode/srt-wy.el'
*** lisp/cedet/srecode/srt-wy.el 2012-09-30 13:27:07 +0000
--- lisp/cedet/srecode/srt-wy.el 2012-10-01 17:27:16 +0000
***************
*** 1,6 ****
;;; srecode/srt-wy.el --- Generated parser support file
! ;; Copyright (C) 2005-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
--- 1,6 ----
;;; srecode/srt-wy.el --- Generated parser support file
! ;; Copyright (C) 2005, 2007-2012 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
=== modified file 'lisp/emacs-lisp/eieio-base.el'
*** lisp/emacs-lisp/eieio-base.el 2012-09-30 08:28:41 +0000
--- lisp/emacs-lisp/eieio-base.el 2012-10-01 17:26:01 +0000
***************
*** 230,238 ****
for CLASS. Optional ALLOW-SUBCLASS says that it is ok for
`eieio-peristent-read' to load in subclasses of class instead of
being pendantic."
! (when (not class)
! (message "Unsafe call to `eieio-persistent-read'.")
! )
(when (and class (not (class-p class)))
(signal 'wrong-type-argument (list 'class-p class)))
(let ((ret nil)
--- 230,237 ----
for CLASS. Optional ALLOW-SUBCLASS says that it is ok for
`eieio-peristent-read' to load in subclasses of class instead of
being pendantic."
! (unless class
! (message "Unsafe call to `eieio-persistent-read'."))
(when (and class (not (class-p class)))
(signal 'wrong-type-argument (list 'class-p class)))
(let ((ret nil)
***************
*** 272,287 ****
(let ((objclass (nth 0 inputlist))
(objname (nth 1 inputlist))
(slots (nthcdr 2 inputlist))
! (createslots nil)
! )
!
;; If OBJCLASS is an eieio autoload object, then we need to load it.
(eieio-class-un-autoload objclass)
(while slots
(let ((name (car slots))
! (value (car (cdr slots)))
! )
;; Make sure that the value proposed for SLOT is valid.
;; In addition, strip out quotes, list functions, and update
--- 271,284 ----
(let ((objclass (nth 0 inputlist))
(objname (nth 1 inputlist))
(slots (nthcdr 2 inputlist))
! (createslots nil))
!
;; If OBJCLASS is an eieio autoload object, then we need to load it.
(eieio-class-un-autoload objclass)
(while slots
(let ((name (car slots))
! (value (car (cdr slots))))
;; Make sure that the value proposed for SLOT is valid.
;; In addition, strip out quotes, list functions, and update
***************
*** 366,372 ****
(nreverse objlist)))
(t
proposed-value))))
!
((stringp proposed-value)
;; Else, check for strings, remove properties.
(substring-no-properties proposed-value))
--- 363,369 ----
(nreverse objlist)))
(t
proposed-value))))
!
((stringp proposed-value)
;; Else, check for strings, remove properties.
(substring-no-properties proposed-value))
=== modified file 'lisp/emacs-lisp/eieio.el'
*** lisp/emacs-lisp/eieio.el 2012-09-25 20:18:22 +0000
--- lisp/emacs-lisp/eieio.el 2012-10-01 17:26:03 +0000
***************
*** 792,798 ****
(when (string-match "\\.elc$" fname)
(setq fname (substring fname 0 (1- (length fname)))))
(put cname 'class-location fname)))
!
;; We have a list of custom groups. Store them into the options.
(let ((g (class-option-assoc options :custom-groups)))
(mapc (lambda (cg) (add-to-list 'g cg)) groups)
--- 792,798 ----
(when (string-match "\\.elc$" fname)
(setq fname (substring fname 0 (1- (length fname)))))
(put cname 'class-location fname)))
!
;; We have a list of custom groups. Store them into the options.
(let ((g (class-option-assoc options :custom-groups)))
(mapc (lambda (cg) (add-to-list 'g cg)) groups)
***************
*** 1270,1278 ****
`(apply ,(list 'quote impl) local-args)
`(apply #',impl local-args))
;(,impl local-args)
! ))))
! )
! ))
(defsubst eieio-defgeneric-reset-generic-form-primary-only-one (method)
"Setup METHOD to call the generic form."
--- 1270,1276 ----
`(apply ,(list 'quote impl) local-args)
`(apply #',impl local-args))
;(,impl local-args)
! )))))))
(defsubst eieio-defgeneric-reset-generic-form-primary-only-one (method)
"Setup METHOD to call the generic form."
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-01 17:48 ` Chong Yidong
@ 2012-10-01 17:56 ` Chong Yidong
2012-10-02 15:24 ` Chong Yidong
1 sibling, 0 replies; 194+ messages in thread
From: Chong Yidong @ 2012-10-01 17:56 UTC (permalink / raw)
To: emacs-devel; +Cc: Eric M. Ludlam
Chong Yidong <cyd@gnu.org> writes:
> I've done the merge, omitting senator and the defadvices as you
> suggested.
Actually, I seem to be having uploading to bzr right now. If it doesn't
go through tonight, I'll try again tomorrow.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
@ 2012-10-02 2:44 Dmitry Gutov
2012-10-02 5:05 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: Dmitry Gutov @ 2012-10-02 2:44 UTC (permalink / raw)
To: cyd; +Cc: eric, deng, emacs-devel
Chong Yidong <cyd@gnu.org> writes:
> I've done the merge, omitting senator and the defadvices as you
> suggested.
Was removing the "Package-Version" header from eieio.el intentional?
It broke some ELPA packages.
Warning (emacs): Unable to activate package `pcache'.
Required package `eieio-1.3' is unavailable
Warning (emacs): Unable to activate package `logito'.
Required package `eieio-1.3' is unavailable
Warning (emacs): Unable to activate package `gist'.
Required package `eieio-1.3' is unavailable
Warning (emacs): Unable to activate package `gh'.
Required package `eieio-1.3' is unavailable
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-02 2:44 Dmitry Gutov
@ 2012-10-02 5:05 ` Chong Yidong
2012-10-02 5:56 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2012-10-02 5:05 UTC (permalink / raw)
To: Dmitry Gutov; +Cc: eric, deng, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 519 bytes --]
Dmitry Gutov <dgutov@yandex.ru> writes:
> Was removing the "Package-Version" header from eieio.el intentional?
> It broke some ELPA packages.
>
> Warning (emacs): Unable to activate package `pcache'.
> Required package `eieio-1.3' is unavailable
Thanks for pointing this out. I restored the headers.
David, could you restore the Version: headers upstream as well? (These
headers are needed by ELPA packages which depend on CEDET components;
the ELPA system generates package versions from them.) Patch attached.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: cedet-back.patch --]
[-- Type: text/x-diff, Size: 1795 bytes --]
=== modified file 'lisp/ChangeLog'
*** lisp/ChangeLog 2012-10-02 03:49:28 +0000
--- lisp/ChangeLog 2012-10-02 05:02:52 +0000
***************
*** 1,3 ****
--- 1,7 ----
+ 2012-10-02 Chong Yidong <cyd@gnu.org>
+
+ * emacs-lisp/eieio.el: Restore Version header.
+
2012-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
* vc/diff-mode.el (diff--auto-refine-data): New var.
=== modified file 'lisp/cedet/ChangeLog'
*** lisp/cedet/ChangeLog 2012-10-01 18:10:29 +0000
--- lisp/cedet/ChangeLog 2012-10-02 05:02:52 +0000
***************
*** 1,3 ****
--- 1,7 ----
+ 2012-10-02 Chong Yidong <cyd@gnu.org>
+
+ * srecode.el, ede.el: Restore Version header.
+
2012-10-01 Chong Yidong <cyd@gnu.org>
* semantic/bovine/c-by.el: Regenerate.
=== modified file 'lisp/cedet/ede.el'
*** lisp/cedet/ede.el 2012-10-01 18:10:29 +0000
--- lisp/cedet/ede.el 2012-10-02 05:02:52 +0000
***************
*** 4,9 ****
--- 4,10 ----
;; Author: Eric M. Ludlam <zappo@gnu.org>
;; Keywords: project, make
+ ;; Version: 1.0
;; This file is part of GNU Emacs.
=== modified file 'lisp/cedet/srecode.el'
*** lisp/cedet/srecode.el 2012-10-01 18:10:29 +0000
--- lisp/cedet/srecode.el 2012-10-02 05:02:52 +0000
***************
*** 4,9 ****
--- 4,10 ----
;; Author: Eric M. Ludlam <zappo@gnu.org>
;; Keywords: codegeneration
+ ;; Version: 1.0
;; This file is part of GNU Emacs.
=== modified file 'lisp/emacs-lisp/eieio.el'
*** lisp/emacs-lisp/eieio.el 2012-10-01 18:10:29 +0000
--- lisp/emacs-lisp/eieio.el 2012-10-02 05:02:52 +0000
***************
*** 4,9 ****
--- 4,10 ----
;; Copyright (C) 1995-1996, 1998-2012 Free Software Foundation, Inc.
;; Author: Eric M. Ludlam <zappo@gnu.org>
+ ;; Version: 1.3
;; Keywords: OO, lisp
;; This file is part of GNU Emacs.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-02 5:05 ` Chong Yidong
@ 2012-10-02 5:56 ` David Engster
0 siblings, 0 replies; 194+ messages in thread
From: David Engster @ 2012-10-02 5:56 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, eric, Dmitry Gutov
Chong Yidong writes:
> Dmitry Gutov <dgutov@yandex.ru> writes:
>
>> Was removing the "Package-Version" header from eieio.el intentional?
>> It broke some ELPA packages.
>>
>> Warning (emacs): Unable to activate package `pcache'.
>> Required package `eieio-1.3' is unavailable
>
> Thanks for pointing this out. I restored the headers.
>
> David, could you restore the Version: headers upstream as well?
Will do. I didn't know that ELPA depended on them; I thought they were
remnants of the CEDET packaging system.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-01 17:48 ` Chong Yidong
2012-10-01 17:56 ` Chong Yidong
@ 2012-10-02 15:24 ` Chong Yidong
1 sibling, 0 replies; 194+ messages in thread
From: Chong Yidong @ 2012-10-02 15:24 UTC (permalink / raw)
To: emacs-devel; +Cc: Eric M. Ludlam
Chong Yidong <cyd@gnu.org> writes:
> To replace the defadvice, it is acceptable to just change the code of
> hif-defined and hif-lookup directly to refer to
> semantic-c-takeover-hideif (if it is bound); no need to use a hook.
> Feel free to submit a patch, or I'll get around to it when I have the
> time.
I've done that now (see the patch below, committed to trunk).
=== modified file 'lisp/progmodes/hideif.el'
*** lisp/progmodes/hideif.el 2012-08-22 07:17:52 +0000
--- lisp/progmodes/hideif.el 2012-10-02 15:19:52 +0000
***************
*** 329,344 ****
"Prepend (var value) pair to hide-ifdef-env."
(setq hide-ifdef-env (cons (cons var value) hide-ifdef-env)))
(defun hif-lookup (var)
! ;; (message "hif-lookup %s" var)
! (let ((val (assoc var hide-ifdef-env)))
! (if val
! (cdr val)
! hif-undefined-symbol)))
(defun hif-defined (var)
! (if (assoc var hide-ifdef-env) 1 0))
;;===%%SF%% evaluation (End) ===
--- 329,351 ----
"Prepend (var value) pair to hide-ifdef-env."
(setq hide-ifdef-env (cons (cons var value) hide-ifdef-env)))
+ (declare-function semantic-c-hideif-lookup "semantic/bovine/c" (var))
+ (declare-function semantic-c-hideif-defined "semantic/bovine/c" (var))
(defun hif-lookup (var)
! (or (when (bound-and-true-p semantic-c-takeover-hideif)
! (semantic-c-hideif-lookup var))
! (let ((val (assoc var hide-ifdef-env)))
! (if val
! (cdr val)
! hif-undefined-symbol))))
(defun hif-defined (var)
! (cond
! ((bound-and-true-p semantic-c-takeover-hideif)
! (semantic-c-hideif-defined var))
! ((assoc var hide-ifdef-env) 1)
! (t 0)))
;;===%%SF%% evaluation (End) ===
.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-30 13:55 ` CEDET merge David Engster
` (2 preceding siblings ...)
2012-10-01 3:44 ` Chong Yidong
@ 2012-10-04 19:32 ` David Engster
2012-10-06 11:19 ` Chong Yidong
2012-11-08 12:32 ` Alex Ott
4 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2012-10-04 19:32 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, emacs-devel, Eric M. Ludlam
David Engster writes:
> I left the grammars and parser generator in admin/grammars for now, but
> IMO the generator bovine-grammar.el and wisent-grammar.el should
> eventually be moved to their proper locations underneath lisp/. The main
> grammar generation is already in lisp/semantic/grammar.el and hence was
> in Emacs all the time; the two files above are just refinements for the
> two different grammar styles.
Any chance we can do this for 24.3.? I think this is a frequently
requested feature.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-04 19:32 ` David Engster
@ 2012-10-06 11:19 ` Chong Yidong
2012-10-06 11:30 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Chong Yidong @ 2012-10-06 11:19 UTC (permalink / raw)
To: emacs-devel
David Engster <deng@randomsample.de> writes:
>> I left the grammars and parser generator in admin/grammars for now, but
>> IMO the generator bovine-grammar.el and wisent-grammar.el should
>> eventually be moved to their proper locations underneath lisp/. The main
>> grammar generation is already in lisp/semantic/grammar.el and hence was
>> in Emacs all the time; the two files above are just refinements for the
>> two different grammar styles.
>
> Any chance we can do this for 24.3.? I think this is a frequently
> requested feature.
Which subdirectory should they go in?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 11:19 ` Chong Yidong
@ 2012-10-06 11:30 ` David Engster
2012-10-06 14:24 ` Chong Yidong
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2012-10-06 11:30 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
Chong Yidong writes:
> David Engster <deng@randomsample.de> writes:
>
>>> I left the grammars and parser generator in admin/grammars for now, but
>>> IMO the generator bovine-grammar.el and wisent-grammar.el should
>>> eventually be moved to their proper locations underneath lisp/. The main
>>> grammar generation is already in lisp/semantic/grammar.el and hence was
>>> in Emacs all the time; the two files above are just refinements for the
>>> two different grammar styles.
>>
>> Any chance we can do this for 24.3.? I think this is a frequently
>> requested feature.
>
> Which subdirectory should they go in?
wisent-grammar.el would be renamed to lisp/cedet/semantic/wisent/grammar.el
bovine-grammar.el to lisp/cedet/semantic/bovine/grammar.el
I guess the functions `wisent-make-parsers' and `bovine-make-parsers'
and the variables they need could be put in a new file which stays in
admin/grammars, since you've added them specifically for the parser
generation in Emacs trunk.
I guess all that's left then is to add proper provide statements and
autoload cookies to the two above files (for the derived major modes and
for the additions to auto-mode-alist).
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 11:30 ` David Engster
@ 2012-10-06 14:24 ` Chong Yidong
2012-10-06 14:54 ` Stefan Monnier
2012-10-07 20:50 ` David Engster
0 siblings, 2 replies; 194+ messages in thread
From: Chong Yidong @ 2012-10-06 14:24 UTC (permalink / raw)
To: emacs-devel; +Cc: Eric M. Ludlam
David Engster <deng@randomsample.de> writes:
> wisent-grammar.el would be renamed to lisp/cedet/semantic/wisent/grammar.el
> bovine-grammar.el to lisp/cedet/semantic/bovine/grammar.el
Done, and the appropriate provide statements and autoload cookies added.
> I guess the functions `wisent-make-parsers' and `bovine-make-parsers'
> and the variables they need could be put in a new file which stays in
> admin/grammars, since you've added them specifically for the parser
> generation in Emacs trunk.
I think we can leave them in those files for now, until we fix the build
system to generate the parsers during the Emacs build process.
By the way, could you or Eric kindly write up a NEWS entry briefly
describing the major changes to CEDET since CEDET-1.0 / Emacs-24.2?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 14:24 ` Chong Yidong
@ 2012-10-06 14:54 ` Stefan Monnier
2012-10-06 17:29 ` David Engster
2012-10-07 20:50 ` David Engster
1 sibling, 1 reply; 194+ messages in thread
From: Stefan Monnier @ 2012-10-06 14:54 UTC (permalink / raw)
To: Chong Yidong; +Cc: Eric M. Ludlam, emacs-devel
> By the way, could you or Eric kindly write up a NEWS entry briefly
> describing the major changes to CEDET since CEDET-1.0 / Emacs-24.2?
I'm also interested to hear about how close we are to having Emacs's
CEDET and the upstream CEDET actually in sync (and kept in sync via
a semi-automatic process).
Stefan
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 14:54 ` Stefan Monnier
@ 2012-10-06 17:29 ` David Engster
2012-10-06 18:10 ` Stefan Monnier
2012-10-06 23:31 ` Glenn Morris
0 siblings, 2 replies; 194+ messages in thread
From: David Engster @ 2012-10-06 17:29 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, emacs-devel, Eric M. Ludlam
Stefan Monnier writes:
>> By the way, could you or Eric kindly write up a NEWS entry briefly
>> describing the major changes to CEDET since CEDET-1.0 / Emacs-24.2?
>
> I'm also interested to hear about how close we are to having Emacs's
> CEDET and the upstream CEDET actually in sync (and kept in sync via
> a semi-automatic process).
Regarding the files which are both in Emacs and in CEDET: those are
pretty much in sync now except for some compatibility code we have to
keep for Emacs 23.1.. We also have some 'defadvice' hacks which we
obviously cannot merge. For getting rid of the defadvices, some changes
in Emacs core packages are needed, but I didn't have time to do that
before the freeze (for example, getting proper help buffers for EIEIO
classes and methods is pretty high on my TODO list).
There are still some packages which are only in CEDET upstream for
several reasons: They're either pretty new and not well tested, or are
in our 'contrib' directory and don't have proper papers, or because they
are a bit obscure (sorry Eric ;-) ) and well separated and hence would
better fit into ELPA. For example, I think Cogre (for generating UML
graphs) would be a good candidate for an ELPA package.
Also, we now have two additional branches in CEDET for doing merges to
and from Emacs; those are in fact "real" branches, meaning they have a
common history, and after the first batch of humongous merges they work
pretty painless now. The real work is in doing the 'diff|patch' thingy
from Emacs to CEDET, but I've written a package for that which makes
that fairly fast. All this should make it possible for me to do regular
merges from now on, like the Gnus/Org people do.
In addition, we are planning to move development of certain packages
completely to Emacs trunk. We already did that for Speedbar; the next
candidates are EIEIO and mode-local.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 17:29 ` David Engster
@ 2012-10-06 18:10 ` Stefan Monnier
2012-10-07 11:19 ` David Engster
2012-10-06 23:31 ` Glenn Morris
1 sibling, 1 reply; 194+ messages in thread
From: Stefan Monnier @ 2012-10-06 18:10 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel, Eric M. Ludlam
> Regarding the files which are both in Emacs and in CEDET: those are
> pretty much in sync now except for some compatibility code we have to
> keep for Emacs 23.1.. We also have some 'defadvice' hacks which we
> obviously cannot merge. For getting rid of the defadvices, some changes
> in Emacs core packages are needed, but I didn't have time to do that
> before the freeze (for example, getting proper help buffers for EIEIO
> classes and methods is pretty high on my TODO list).
OK. I expect the removal of defadvice will require some changes to the
core, so probably some discussions to agree on how to do it, right?
> There are still some packages which are only in CEDET upstream for
> several reasons: They're either pretty new and not well tested, or are
> in our 'contrib' directory and don't have proper papers, or because they
> are a bit obscure (sorry Eric ;-) ) and well separated and hence would
> better fit into ELPA. For example, I think Cogre (for generating UML
> graphs) would be a good candidate for an ELPA package.
Adding those that can (i.e. that have the needed copyright paperwork) to
GNU ELPA would be great, yes.
> pretty painless now. The real work is in doing the 'diff|patch' thingy
> from Emacs to CEDET, but I've written a package for that which makes
> that fairly fast. All this should make it possible for me to do regular
> merges from now on, like the Gnus/Org people do.
Sounds good, thank you very much for that work.
> In addition, we are planning to move development of certain packages
> completely to Emacs trunk. We already did that for Speedbar; the next
> candidates are EIEIO and mode-local.
Reminds me: we should start labeling the files not just with "who's the
maintainer" but also with "is there some external upstream". Maybe by
adding a "Canonical-URL:" header for those externally-maintained files?
While we generally expect upstreams to take care of tracking the changes
we install, there are many cases where changes only make sense if
there's no external upstream. E.g. switching from `cl' to `cl-lib',
where the upstream will probably not want to integrate this change
because they care about backward compatibility.
I have some approximate memory of which packages are externally
maintained and which don't, but it would help if I didn't have to rely
on that fuzzy memory.
Stefan
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 17:29 ` David Engster
2012-10-06 18:10 ` Stefan Monnier
@ 2012-10-06 23:31 ` Glenn Morris
2012-10-07 1:15 ` Glenn Morris
1 sibling, 1 reply; 194+ messages in thread
From: Glenn Morris @ 2012-10-06 23:31 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, emacs-devel, Eric M. Ludlam
David Engster wrote:
> There are still some packages which are only in CEDET upstream for
> several reasons: They're either pretty new and not well tested, or are
> in our 'contrib' directory and don't have proper papers, or because they
> are a bit obscure (sorry Eric ;-) ) and well separated and hence would
> better fit into ELPA.
Is there a reason why Emacs does not have the srecode manual?
http://debbugs.gnu.org9966
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 23:31 ` Glenn Morris
@ 2012-10-07 1:15 ` Glenn Morris
2012-10-07 11:03 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Glenn Morris @ 2012-10-07 1:15 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, Eric M. Ludlam, emacs-devel
Glenn Morris wrote:
> Is there a reason why Emacs does not have the srecode manual?
>
> http://debbugs.gnu.org9966
Similar question for semantic/adebug.el:
http://debbugs.gnu.org/5761
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-07 1:15 ` Glenn Morris
@ 2012-10-07 11:03 ` David Engster
2012-10-27 14:40 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2012-10-07 11:03 UTC (permalink / raw)
To: Glenn Morris; +Cc: Chong Yidong, emacs-devel, Stefan Monnier, Eric M. Ludlam
Glenn Morris writes:
> Glenn Morris wrote:
>
>> Is there a reason why Emacs does not have the srecode manual?
>>
>> http://debbugs.gnu.org9966
>
> Similar question for semantic/adebug.el:
>
> http://debbugs.gnu.org/5761
I don't know why those manuals were not included during the first
merge. I guess they should be merged now if the papers for them are in
order.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 18:10 ` Stefan Monnier
@ 2012-10-07 11:19 ` David Engster
0 siblings, 0 replies; 194+ messages in thread
From: David Engster @ 2012-10-07 11:19 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Chong Yidong, Eric M. Ludlam, emacs-devel
Stefan Monnier writes:
>> Regarding the files which are both in Emacs and in CEDET: those are
>> pretty much in sync now except for some compatibility code we have to
>> keep for Emacs 23.1.. We also have some 'defadvice' hacks which we
>> obviously cannot merge. For getting rid of the defadvices, some changes
>> in Emacs core packages are needed, but I didn't have time to do that
>> before the freeze (for example, getting proper help buffers for EIEIO
>> classes and methods is pretty high on my TODO list).
>
> OK. I expect the removal of defadvice will require some changes to the
> core, so probably some discussions to agree on how to do it, right?
Sure. I have some ideas on how to do the help buffer stuff for EIEIO,
but it doesn't make sense to discuss this during the freeze.
>> There are still some packages which are only in CEDET upstream for
>> several reasons: They're either pretty new and not well tested, or are
>> in our 'contrib' directory and don't have proper papers, or because they
>> are a bit obscure (sorry Eric ;-) ) and well separated and hence would
>> better fit into ELPA. For example, I think Cogre (for generating UML
>> graphs) would be a good candidate for an ELPA package.
>
> Adding those that can (i.e. that have the needed copyright paperwork) to
> GNU ELPA would be great, yes.
Cogre was written by Eric, but maybe others have contributed. We will
have to look that up.
> Reminds me: we should start labeling the files not just with "who's the
> maintainer" but also with "is there some external upstream". Maybe by
> adding a "Canonical-URL:" header for those externally-maintained files?
I think a simple flag would suffice, so that those files are excluded
from large changes which break compatibility to older versions, like the
move to `cl-lib'.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-06 14:24 ` Chong Yidong
2012-10-06 14:54 ` Stefan Monnier
@ 2012-10-07 20:50 ` David Engster
1 sibling, 0 replies; 194+ messages in thread
From: David Engster @ 2012-10-07 20:50 UTC (permalink / raw)
To: Chong Yidong; +Cc: Eric M. Ludlam, emacs-devel
Chong Yidong writes:
> David Engster <deng@randomsample.de> writes:
>
>> wisent-grammar.el would be renamed to lisp/cedet/semantic/wisent/grammar.el
>> bovine-grammar.el to lisp/cedet/semantic/bovine/grammar.el
>
> Done, and the appropriate provide statements and autoload cookies added.
Thanks. I forgot one thing: For generating a parser, Semantic must be
enabled. That means, if a user just loads a grammar and hits C-c C-c
without Semantic being enabled, he'll get a "bad input grammar"
error. We have actually the same problem with Srecode templates (see Bug
#9968).
I think it is clearly not a good idea to simply enable Semantic globally
in this case. Instead, we could enable it only for the current buffer by
putting
(unless semantic-mode
(require 'semantic)
(semantic-new-buffer-fcn))
into bovine/wisent-grammar-mode and srecode-template-mode. I think this
should always work. Eric, please correct me if I'm wrong.
>> I guess the functions `wisent-make-parsers' and `bovine-make-parsers'
>> and the variables they need could be put in a new file which stays in
>> admin/grammars, since you've added them specifically for the parser
>> generation in Emacs trunk.
>
> I think we can leave them in those files for now, until we fix the build
> system to generate the parsers during the Emacs build process.
OK.
> By the way, could you or Eric kindly write up a NEWS entry briefly
> describing the major changes to CEDET since CEDET-1.0 / Emacs-24.2?
Sure. We have a NEWS file for the CEDET 1.1 release, so we just have to
extract the relevant portions from there.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-07 11:03 ` David Engster
@ 2012-10-27 14:40 ` David Engster
2012-10-28 18:50 ` Glenn Morris
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2012-10-27 14:40 UTC (permalink / raw)
To: emacs-devel; +Cc: Chong Yidong, Stefan Monnier, Eric M. Ludlam
Glenn Morris writes:
>>> Is there a reason why Emacs does not have the srecode manual?
>>>
>>> http://debbugs.gnu.org9966
To revive this thread: I think the following manuals are currently
missing from Emacs:
- Srecode, as mentioned by Glen above
- Bovine and Wisent, which are now proper Emacs packages and hence their
manuals should be present.
I've skimmed the logs and the Srecode docs were pretty much completely
written by Eric. Wisent and Bovine were written by David Ponce and
Eric. Also, Richard Y. Kim is credited in the AUTHOR line.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-27 14:40 ` David Engster
@ 2012-10-28 18:50 ` Glenn Morris
2012-11-17 3:23 ` Glenn Morris
0 siblings, 1 reply; 194+ messages in thread
From: Glenn Morris @ 2012-10-28 18:50 UTC (permalink / raw)
To: emacs-devel; +Cc: Chong Yidong, Stefan Monnier, Eric M. Ludlam
David Engster wrote:
> To revive this thread: I think the following manuals are currently
> missing from Emacs:
>
> - Srecode, as mentioned by Glen above
> - Bovine and Wisent, which are now proper Emacs packages and hence their
> manuals should be present.
>
> I've skimmed the logs and the Srecode docs were pretty much completely
> written by Eric. Wisent and Bovine were written by David Ponce and
> Eric. Also, Richard Y. Kim is credited in the AUTHOR line.
Thanks for following up. If everyone who wrote non-trivial portions of
these manuals has a copyright assignment, then I can't see any reason
not to include them in Emacs. For Richard Kim, it looks like anything
before 2010-1-8 is definitely fine.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-09-30 13:55 ` CEDET merge David Engster
` (3 preceding siblings ...)
2012-10-04 19:32 ` David Engster
@ 2012-11-08 12:32 ` Alex Ott
4 siblings, 0 replies; 194+ messages in thread
From: Alex Ott @ 2012-11-08 12:32 UTC (permalink / raw)
To: Stefan Monnier, Chong Yidong, emacs-devel, David Engster
Hi all
Is it possible to update Java parts of CEDET in Emacs with the
changes, that were made last weeks? At least for cedet-java.el &
db-javap.el - I think, that these changes can be useful for many Emacs
users who are using it to program Java...
On Sun, Sep 30, 2012 at 3:55 PM, David Engster <deng@randomsample.de> wrote:
> David Engster writes:
>> Stefan Monnier writes:
>>>> the other way round. I think I should be able to have our 'to-emacs'
>>>> branch ready till October 1st, which could then be merged in.
>>>
>>> This merge is important, yes. Please let us know if you can't make it
>>> for October 1st.
>>
>> Please do not commit this patch yet, since it definitely needs some
>> further testing. My plan is to check the code with our test suite, which
>> will need a few tweaks first to work with stock Emacs, though.
>
> I've checked the new code base with our test suite and fixed a bunch of
> stuff. Everything's working now except for a few minor things, so I
> think the branch is now ready for merging.
>
> You can obtain a patch file from our 'to-emacs' branch (for details see
> my last mail), but I've also attached it to this message so everyone can
> check it easily. There's no ChangeLog yet, so if you want to check the
> logs you still need our 'to-emacs' branch.
>
> Please take a look at the issues I raised in my previous mail, since
> they still apply (esp. regarding checking for papers).
>
> Additionally, I've also regenerated the Elisp parsers from the updated
> grammar files. This converted some more explicit copyright ranges like
>
> Copyright (C) 2002-2004, 2007, 2010-2012 Free Software Foundation, Inc
>
> to a simple range like this
>
> Copyright (C) 2002-2012 Free Software Foundation, Inc.
>
> Is this acceptable? Also, it removed the 'Author: David Ponce' line from
> cedet/semantic/grammar.el, but I think it didn't make sense anyway since
> it is a generated file (from admin/grammars/grammar.wy, where he's still
> credited).
>
> I left the grammars and parser generator in admin/grammars for now, but
> IMO the generator bovine-grammar.el and wisent-grammar.el should
> eventually be moved to their proper locations underneath lisp/. The main
> grammar generation is already in lisp/semantic/grammar.el and hence was
> in Emacs all the time; the two files above are just refinements for the
> two different grammar styles.
>
> -David
>
--
With best wishes, Alex Ott
http://alexott.net/
Twitter: alexott_en (English), alexott (Russian)
Skype: alex.ott
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-10-28 18:50 ` Glenn Morris
@ 2012-11-17 3:23 ` Glenn Morris
2012-11-18 15:42 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Glenn Morris @ 2012-11-17 3:23 UTC (permalink / raw)
To: emacs-devel; +Cc: Chong Yidong, Stefan Monnier, Eric M. Ludlam
Do you need help adding these manuals to Emacs?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-11-17 3:23 ` Glenn Morris
@ 2012-11-18 15:42 ` David Engster
2012-11-20 2:45 ` Glenn Morris
2012-11-21 13:09 ` Chong Yidong
0 siblings, 2 replies; 194+ messages in thread
From: David Engster @ 2012-11-18 15:42 UTC (permalink / raw)
To: Glenn Morris; +Cc: Eric M. Ludlam, Chong Yidong, Stefan Monnier, emacs-devel
Glenn Morris writes:
> Do you need help adding these manuals to Emacs?
Maybe I didn't make myself clear, but I'm actually waiting for a "yes,
go ahead" from the maintainers. Maybe there *is* a reason why the
SRecode manual wasn't merged initially.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-11-18 15:42 ` David Engster
@ 2012-11-20 2:45 ` Glenn Morris
2012-11-21 13:09 ` Chong Yidong
1 sibling, 0 replies; 194+ messages in thread
From: Glenn Morris @ 2012-11-20 2:45 UTC (permalink / raw)
To: emacs-devel; +Cc: Chong Yidong, Stefan Monnier, Eric M. Ludlam
David Engster wrote:
> Maybe there *is* a reason why the SRecode manual wasn't merged initially.
That's question that started this, 6 weeks ago:
http://lists.gnu.org/archive/html/emacs-devel/2012-10/msg00347.html
I'm interpreting no answer to mean "there is no reason"...
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET merge
2012-11-18 15:42 ` David Engster
2012-11-20 2:45 ` Glenn Morris
@ 2012-11-21 13:09 ` Chong Yidong
1 sibling, 0 replies; 194+ messages in thread
From: Chong Yidong @ 2012-11-21 13:09 UTC (permalink / raw)
To: Glenn Morris; +Cc: Eric M. Ludlam, Stefan Monnier, emacs-devel
David Engster <deng@randomsample.de> writes:
> Maybe I didn't make myself clear, but I'm actually waiting for a "yes,
> go ahead" from the maintainers. Maybe there *is* a reason why the
> SRecode manual wasn't merged initially.
Yes, please go ahead. Thanks.
^ permalink raw reply [flat|nested] 194+ messages in thread
* CEDET Merge
@ 2017-01-12 19:32 Edward John Steere
2017-01-12 19:45 ` Eli Zaretskii
` (2 more replies)
0 siblings, 3 replies; 194+ messages in thread
From: Edward John Steere @ 2017-01-12 19:32 UTC (permalink / raw)
To: emacs-devel
Hello Everyone,
I've been working on a branch in upstream CEDET which brings it up to
date with the changes which have been made in Emacs core. I started
this work with the intention of simplifying the merge process from CEDET
upstream into core so that users can benefit from improvements to CEDET
more easily. I found that the divergence between the two versions of
CEDET has grown quite a bit and all of my work has been dedicated to
getting it to run on Emacs master (26?).
My branch now passes all of CEDETs tests when built against Emacs
@512e988. I'd like to get these changes synchronised with Emacs core
and have my branch merged to upstream (i.e. CEDET on source forge).
This could be the first step with the second being a repackaging of
upstream so that it only contains the parts which are under active
development and can be installed via ELPA.
May I contribute my changes to a branch on the Savannah repository for
review/commentary? (If yes, then It'll take a little bit of time to
merge the changes in my branch of CEDET back into Emacs core before I
actually push them up.)
Kind regards,
Edward Steere
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-12 19:32 CEDET Merge Edward John Steere
@ 2017-01-12 19:45 ` Eli Zaretskii
2017-01-12 20:27 ` Edward John Steere
2017-01-12 20:10 ` Bastian Beischer
2017-09-23 11:38 ` Charles A. Roelli
2 siblings, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-12 19:45 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel
> From: Edward John Steere <edward.steere@gmail.com>
> Date: Thu, 12 Jan 2017 21:32:36 +0200
>
> May I contribute my changes to a branch on the Savannah repository for
> review/commentary?
Yes, of course. Thanks for working on this.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-12 19:32 CEDET Merge Edward John Steere
2017-01-12 19:45 ` Eli Zaretskii
@ 2017-01-12 20:10 ` Bastian Beischer
2017-01-12 20:40 ` Edward John Steere
2017-09-23 11:38 ` Charles A. Roelli
2 siblings, 1 reply; 194+ messages in thread
From: Bastian Beischer @ 2017-01-12 20:10 UTC (permalink / raw)
To: Edward John Steere; +Cc: Emacs-Devel
Hey Edward,
On Thu, Jan 12, 2017 at 8:32 PM, Edward John Steere
<edward.steere@gmail.com> wrote:
> Hello Everyone,
>
> I've been working on a branch in upstream CEDET which brings it up to
> date with the changes which have been made in Emacs core. I started
> this work with the intention of simplifying the merge process from CEDET
> upstream into core so that users can benefit from improvements to CEDET
> more easily. I found that the divergence between the two versions of
> CEDET has grown quite a bit and all of my work has been dedicated to
> getting it to run on Emacs master (26?).
>
> My branch now passes all of CEDETs tests when built against Emacs
> @512e988. I'd like to get these changes synchronised with Emacs core
> and have my branch merged to upstream (i.e. CEDET on source forge).
>
> This could be the first step with the second being a repackaging of
> upstream so that it only contains the parts which are under active
> development and can be installed via ELPA.
>
> May I contribute my changes to a branch on the Savannah repository for
> review/commentary? (If yes, then It'll take a little bit of time to
> merge the changes in my branch of CEDET back into Emacs core before I
> actually push them up.)
It's great to hear that you have been working on this. I'm also very
interested in getting CEDET upstream and CEDET in emacs synchronized
again. Please see also this bug report:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23792
This also contains a patch for the emacs sources which I've come up
with half a year ago, but it's probably incomplete and even wrong in
places. But maybe we can compare what we did.
Do you have a git repository cloned from CEDET upstream which contains
your work somewhere? Or did you start by modifying the built-in CEDET
in emacs?
>
> Kind regards,
>
> Edward Steere
>
Cheers
Bastian
--
Bastian Beischer
RWTH Aachen University of Technology
@RWTH Aachen
Office: 28 C 203
Phone: +49-241-80-27205
E-mail: beischer@physik.rwth-aachen.de
Address: I. Physikalisches Institut B, Sommerfeldstr. 14, D-52074 Aachen
@CERN
Office: Bdg 32-4-B12
Phone: +41-22-76-75750
E-mail: bastian.beischer@cern.ch
Address: CERN, CH-1211 Geneve 23
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-12 19:45 ` Eli Zaretskii
@ 2017-01-12 20:27 ` Edward John Steere
0 siblings, 0 replies; 194+ messages in thread
From: Edward John Steere @ 2017-01-12 20:27 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
>> From: Edward John Steere <edward.steere@gmail.com>
>> Date: Thu, 12 Jan 2017 21:32:36 +0200
>>
>> May I contribute my changes to a branch on the Savannah repository for
>> review/commentary?
>
> Yes, of course. Thanks for working on this.
Great I'll get to work on it and follow up when it's ready.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-12 20:10 ` Bastian Beischer
@ 2017-01-12 20:40 ` Edward John Steere
2017-01-16 18:45 ` Edward John Steere
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-12 20:40 UTC (permalink / raw)
To: Bastian Beischer; +Cc: Emacs-Devel
Hi Bastian,
> It's great to hear that you have been working on this. I'm also very
> interested in getting CEDET upstream and CEDET in emacs synchronized
> again. Please see also this bug report:
>
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23792
I remember seeing your post a while ago, but had forgotten about it.
I'll take a look now.
> This also contains a patch for the emacs sources which I've come up
> with half a year ago, but it's probably incomplete and even wrong in
> places. But maybe we can compare what we did.
>
> Do you have a git repository cloned from CEDET upstream which contains
> your work somewhere? Or did you start by modifying the built-in CEDET
> in emacs?
I tried various approaches (with varying degrees of success) before
going for something rather brute force: I diffed every file in CEDET
from Emacs core to it's corresponding file in upstream (creating a diff
file per file-pair) and applied the changes to upstream by hand.
At the moment my changes are living on a private repository. I'd like
to do some tidying up with regards to commits before I make them
available. I'll get to work on that tomorrow.
> Cheers
> Bastian
Kind regards,
Edward Steere
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-12 20:40 ` Edward John Steere
@ 2017-01-16 18:45 ` Edward John Steere
2017-01-16 19:30 ` Eli Zaretskii
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-16 18:45 UTC (permalink / raw)
To: Emacs-Devel
> Hi Bastian,
>
>> It's great to hear that you have been working on this. I'm also very
>> interested in getting CEDET upstream and CEDET in emacs synchronized
>> again. Please see also this bug report:
>>
>> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23792
>
> I remember seeing your post a while ago, but had forgotten about it.
> I'll take a look now.
>
>> This also contains a patch for the emacs sources which I've come up
>> with half a year ago, but it's probably incomplete and even wrong in
>> places. But maybe we can compare what we did.
>>
>> Do you have a git repository cloned from CEDET upstream which contains
>> your work somewhere? Or did you start by modifying the built-in CEDET
>> in emacs?
>
> I tried various approaches (with varying degrees of success) before
> going for something rather brute force: I diffed every file in CEDET
> from Emacs core to it's corresponding file in upstream (creating a diff
> file per file-pair) and applied the changes to upstream by hand.
>
> At the moment my changes are living on a private repository. I'd like
> to do some tidying up with regards to commits before I make them
> available. I'll get to work on that tomorrow.
>
>> Cheers
>> Bastian
>
> Kind regards,
>
> Edward Steere
Hi All,
Please may I have some advice. I've been trying to get my change merged
into Emacs core locally, and have had little (read no) success. These
are the approaches I've tried so far (not verbatim):
1. git remote add ~/wip/cedet cedet && git merge
--allow-unrelated-histories etc.
2. git subtree (not the right model because Cedet mirrors the layout of
sources in Emacs core)
3. rm -rf ~/wip/emacs/lisp/cedet && cp ~/wip/cedet/lisp/cedet ~/wip/emacs/cedet
I've opted for option 3 because I realised that I'd already done the
merge in the other direction and now the state of that branch should be
exactly reflected in core. However, when I try to bootstrap Emacs I get
errors when loading loaddefs.el in lisp/. It complains about
eieio-defclass-autoload being undefined -- which is fair enough because
that's only autoloaded later, removing the class autoloads which caused
the autoloads to be added produces the same error for
ede-project-autoload. In the interests of seeing how far I could go
before completely bombing out I removed this autoload as well and I was
confronted with another autoload error, this time in the `jka'
compression library (!?)
What follows is the error with a few lines before it for context (you
can substitute the void variable error with a similar function is void
error for an idea of how the previous two errors looked):
make[3]: Leaving directory '/home/edward/emacs/leim'
LC_ALL=C ./temacs -batch -l loadup dump
Loading loadup.el (source)...
Using load-path (/home/edward/emacs/lisp)
Loading emacs-lisp/byte-run...
Loading emacs-lisp/backquote...
Loading subr...
Loading version...
Loading widget...
Loading custom...
Loading emacs-lisp/map-ynp...
Loading international/mule...
Loading international/mule-conf...
Loading env...
Loading format...
Loading bindings...
Loading window...
Loading files...
Loading emacs-lisp/macroexp...
Loading cus-face...
Loading faces...
Loading button...
Loading loaddefs.el (source)...
Symbol's value as variable is void: jka-compr-load-suffixes
Makefile:546: recipe for target 'emacs' failed
make[2]: *** [emacs] Error 255
make[2]: Leaving directory '/home/edward/emacs/src'
Makefile:409: recipe for target 'src' failed
make[1]: *** [src] Error 2
make[1]: Leaving directory '/home/edward/emacs'
Makefile:1123: recipe for target 'bootstrap-build' failed
make: *** [bootstrap-build] Error 2
I would greatly appreciate any advice with regards to the best way to
debug errors like this in the build process.
Kind regards,
Edward Steere
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 18:45 ` Edward John Steere
@ 2017-01-16 19:30 ` Eli Zaretskii
2017-01-16 19:55 ` Edward John Steere
0 siblings, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-16 19:30 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel
> From: Edward John Steere <edward.steere@gmail.com>
> Cc:
> Date: Mon, 16 Jan 2017 20:45:01 +0200
>
> 3. rm -rf ~/wip/emacs/lisp/cedet && cp ~/wip/cedet/lisp/cedet ~/wip/emacs/cedet
>
> I've opted for option 3 because I realised that I'd already done the
> merge in the other direction and now the state of that branch should be
> exactly reflected in core. However, when I try to bootstrap Emacs I get
> errors when loading loaddefs.el in lisp/. It complains about
> eieio-defclass-autoload being undefined -- which is fair enough because
> that's only autoloaded later, removing the class autoloads which caused
> the autoloads to be added produces the same error for
> ede-project-autoload. In the interests of seeing how far I could go
> before completely bombing out I removed this autoload as well and I was
> confronted with another autoload error, this time in the `jka'
> compression library (!?)
>
> What follows is the error with a few lines before it for context (you
> can substitute the void variable error with a similar function is void
> error for an idea of how the previous two errors looked):
Did you try deleting loaddefs.el and running "make maintainer-clean"
before bootstrap?
If you did, and the problem persists, please show the offending parts
on loaddefs.el which trigger these errors.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 19:30 ` Eli Zaretskii
@ 2017-01-16 19:55 ` Edward John Steere
2017-01-16 20:06 ` Eli Zaretskii
2017-01-16 20:26 ` David Engster
0 siblings, 2 replies; 194+ messages in thread
From: Edward John Steere @ 2017-01-16 19:55 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
Hi Eli,
> Did you try deleting loaddefs.el and running "make maintainer-clean"
> before bootstrap?
I did, but to be sure I just did a fresh copy across and ran:
"make maintainer-clean && make bootstrap" and it failed again with the
same error.
> If you did, and the problem persists, please show the offending parts
> on loaddefs.el which trigger these errors.
Here are the offenders for the first error (they come from a new module
in Cedet called cogre):
;;;### (autoloads nil "cogre" "cedet/cogre.el" (0 0 0 0))
;;; Generated autoloads from cedet/cogre.el
(eieio-defclass-autoload 'cogre-graph-element '(eieio-named) "cogre" "A Graph Element.\nGraph elements are anything that is drawn into a `cogre-base-graph'.\nGraph elements have a method for marking themselves dirty.")
(eieio-defclass-autoload 'cogre-base-graph '(eieio-persistent) "cogre" "A Connected Graph.\na connected graph contains a series of nodes and links which are\nrendered in a buffer, or serialized to disk.")
(eieio-defclass-autoload 'cogre-node '(cogre-graph-element) "cogre" "Connected Graph node.\nNodes are regions with a fill color, and some amount of text representing\na status, or values.")
(eieio-defclass-autoload 'cogre-link '(cogre-graph-element) "cogre" "Connected Graph link.\nLinks are lines drawn between two nodes, or possibly loose in space\nas an intermediate step. Some links have text describing what they\ndo, and most links have special markers on one end or another, such as\narrows or circles.")
(eieio-defclass-autoload 'cogre-arrow '(cogre-link) "cogre" "This type of link is a simple arrow.")
Here are the second offenders (they come from support for compdb and ninja):
(ede-add-project-autoload (ede-project-autoload :name "Compilation DB" :file 'ede/compdb :proj-file "compile_commands.json" :load-type 'ede-compdb-load-project :class-sym 'ede-compdb-project))
(ede-add-project-autoload (ede-project-autoload :name "Ninja" :file 'ede/compdb :proj-file "build.ninja" :load-type 'ede-ninja-load-project :class-sym 'ede-ninja-project))
I can't find any reference to the jka variable in loaddefs.
Kind regards,
Edward Steere
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 19:55 ` Edward John Steere
@ 2017-01-16 20:06 ` Eli Zaretskii
2017-01-16 20:12 ` Edward John Steere
2017-01-16 20:26 ` David Engster
1 sibling, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-16 20:06 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel
> From: Edward John Steere <edward.steere@gmail.com>
> Cc: emacs-devel@gnu.org
> Date: Mon, 16 Jan 2017 21:55:23 +0200
>
> Here are the second offenders (they come from support for compdb and ninja):
>
> (ede-add-project-autoload (ede-project-autoload :name "Compilation DB" :file 'ede/compdb :proj-file "compile_commands.json" :load-type 'ede-compdb-load-project :class-sym 'ede-compdb-project))
>
> (ede-add-project-autoload (ede-project-autoload :name "Ninja" :file 'ede/compdb :proj-file "build.ninja" :load-type 'ede-ninja-load-project :class-sym 'ede-ninja-project))
>
>
> I can't find any reference to the jka variable in loaddefs.
Search for that variable in all of the lisp directory and its
subdirectories. What hits do you see? Are any of them in cedet
directories?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 20:06 ` Eli Zaretskii
@ 2017-01-16 20:12 ` Edward John Steere
2017-01-17 15:59 ` Eli Zaretskii
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-16 20:12 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
> Search for that variable in all of the lisp directory and its
> subdirectories. What hits do you see? Are any of them in cedet
> directories?
Nope only hits when I grep recursively from lisp/ are in:
- jka-cmpr-hook
- subr
- jka-compr
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 19:55 ` Edward John Steere
2017-01-16 20:06 ` Eli Zaretskii
@ 2017-01-16 20:26 ` David Engster
2017-01-16 20:37 ` Edward John Steere
1 sibling, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-16 20:26 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, emacs-devel
Edward John Steere writes:
> Here are the offenders for the first error (they come from a new module
> in Cedet called cogre):
No, please do not merge Cogre. It is not a new module, was never part of
Emacs and is not really actively developed anymore.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 20:26 ` David Engster
@ 2017-01-16 20:37 ` Edward John Steere
2017-01-16 21:13 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-16 20:37 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, emacs-devel
> No, please do not merge Cogre. It is not a new module, was never part of
> Emacs and is not really actively developed anymore.
>
> -David
Sure.
The plan is to start by getting the whole of Cedet compiling and
starting up in core and then taking a more deliberate approach to what
stays and goes. I'm taking this approach because the alternatives
require a bit more historic knowledge of Cedet than I have.
Are you aware of a better approach?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 20:37 ` Edward John Steere
@ 2017-01-16 21:13 ` David Engster
2017-01-17 5:21 ` Edward Steere
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-16 21:13 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, emacs-devel
Edward John Steere writes:
>> No, please do not merge Cogre. It is not a new module, was never part of
>> Emacs and is not really actively developed anymore.
>>
>> -David
>
> Sure.
>
> The plan is to start by getting the whole of Cedet compiling and
> starting up in core and then taking a more deliberate approach to what
> stays and goes. I'm taking this approach because the alternatives
> require a bit more historic knowledge of Cedet than I have.
>
> Are you aware of a better approach?
The problem with this approach is that you loose lots of history for the
changes that are applied. In Emacs this is especially problematic
because of the copyright issues. So one will need at least a proper
ChangeLog, saying which authors changed which functions, but the Emacs
maintainers will have to say if that would suffice of if we need
authorship information for each line that is applied.
So the "Right Way" would be to apply the upstream commits that happened
since the last CEDET merge to the Emacs repo. I had a package for doing
that, but it was based on Bazaar, so that went they way of the
Dodo. It's called cedet-emacs-merge.el and is in the CEDET repo. I don't
think it makes sense to port it to git, because we actually agreed some
time ago to drop the CEDET repo altogether, so we would "only" need one
final one-way merge. It's been on my TODO list for ages, and I'm really
sorry that it still has not happened yet.
In my opinion, the first thing that should be done is to port the test
suite to Emacs, meaning the unit and integration tests for Semantic and
EDE, ripping out all tests for stuff that is not in Emacs. I already did
that for EIEIO, but for Semantic and EDE a lot is missing. It will make
it much easier to find regressions while doing the merge.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 21:13 ` David Engster
@ 2017-01-17 5:21 ` Edward Steere
2017-01-17 21:06 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Edward Steere @ 2017-01-17 5:21 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, emacs-devel
Sent from my iPhone
> On 16 Jan 2017, at 11:13 PM, David Engster <deng@randomsample.de> wrote:
>
> Edward John Steere writes:
>>> No, please do not merge Cogre. It is not a new module, was never part of
>>> Emacs and is not really actively developed anymore.
>>>
>>> -David
>>
>> Sure.
>>
>> The plan is to start by getting the whole of Cedet compiling and
>> starting up in core and then taking a more deliberate approach to what
>> stays and goes. I'm taking this approach because the alternatives
>> require a bit more historic knowledge of Cedet than I have.
>>
>> Are you aware of a better approach?
>
> The problem with this approach is that you loose lots of history for the
> changes that are applied. In Emacs this is especially problematic
> because of the copyright issues. So one will need at least a proper
> ChangeLog, saying which authors changed which functions, but the Emacs
> maintainers will have to say if that would suffice of if we need
> authorship information for each line that is applied.
>
> So the "Right Way" would be to apply the upstream commits that happened
> since the last CEDET merge to the Emacs repo. I had a package for doing
> that, but it was based on Bazaar, so that went they way of the
> Dodo. It's called cedet-emacs-merge.el and is in the CEDET repo. I don't
> think it makes sense to port it to git, because we actually agreed some
> time ago to drop the CEDET repo altogether, so we would "only" need one
> final one-way merge. It's been on my TODO list for ages, and I'm really
> sorry that it still has not happened yet.
>
> In my opinion, the first thing that should be done is to port the test
> suite to Emacs, meaning the unit and integration tests for Semantic and
> EDE, ripping out all tests for stuff that is not in Emacs. I already did
> that for EIEIO, but for Semantic and EDE a lot is missing. It will make
> it much easier to find regressions while doing the merge.
>
> -David
Alright. It shouldn't be too difficult to merge with the commit history intact and I agree wrt the tests so I'll make a start of porting those tonight.
Wrt the files which are in upstream but not in core do you have any experience with what ought to be merged? There are newly supported project types and databases which look like they should probably be merged, but there are still more sources. If not all of it is appropriate for the merge then perhaps we could look at moving future development to one or many ELPA packages.
(Apologies for the formatting, I'm writing this on my phone)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-16 20:12 ` Edward John Steere
@ 2017-01-17 15:59 ` Eli Zaretskii
2017-01-17 16:10 ` Edward John Steere
0 siblings, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-17 15:59 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel
> From: Edward John Steere <edward.steere@gmail.com>
> Cc: emacs-devel@gnu.org
> Date: Mon, 16 Jan 2017 22:12:47 +0200
>
> > Search for that variable in all of the lisp directory and its
> > subdirectories. What hits do you see? Are any of them in cedet
> > directories?
>
> Nope only hits when I grep recursively from lisp/ are in:
> - jka-cmpr-hook
> - subr
> - jka-compr
I understand that you've changed your merge strategy, so please tell
if/when this becomes relevant again.
Thanks for working on this.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 15:59 ` Eli Zaretskii
@ 2017-01-17 16:10 ` Edward John Steere
2017-01-17 16:36 ` Stephen Leake
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-17 16:10 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
> I understand that you've changed your merge strategy, so please tell
> if/when this becomes relevant again.
>
> Thanks for working on this.
Correct. Thanks for your input anyway. Hopefully it wont take too long
before I have something to show for my efforts.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 16:10 ` Edward John Steere
@ 2017-01-17 16:36 ` Stephen Leake
2017-01-17 20:36 ` Edward John Steere
2017-01-17 21:10 ` David Engster
0 siblings, 2 replies; 194+ messages in thread
From: Stephen Leake @ 2017-01-17 16:36 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, emacs-devel
Edward John Steere <edward.steere@gmail.com> writes:
>> I understand that you've changed your merge strategy, so please tell
>> if/when this becomes relevant again.
>>
>> Thanks for working on this.
>
> Correct. Thanks for your input anyway. Hopefully it wont take too long
> before I have something to show for my efforts.
I'd like to help with this. Perhaps doing some of the merge work, or by
running tests; let me know.
--
-- Stephe
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 16:36 ` Stephen Leake
@ 2017-01-17 20:36 ` Edward John Steere
2017-01-17 21:22 ` Stephen Leake
2017-01-17 21:23 ` David Engster
2017-01-17 21:10 ` David Engster
1 sibling, 2 replies; 194+ messages in thread
From: Edward John Steere @ 2017-01-17 20:36 UTC (permalink / raw)
To: Stephen Leake; +Cc: Eli Zaretskii, emacs-devel
> I'd like to help with this. Perhaps doing some of the merge work, or by
> running tests; let me know.
Hi Stephe,
Great! I could use all the help I can get :-)
Our main concern is to maintain the commit history and I think that my
original approach of merging to CEDET and then back creates too much
noise. So I'm now considering a new approach and would value your
involvement if we can work out the details.
I think that the best way to go about this is to move everything in the
CEDET project into folders which mirror their destination in core.
Changes will be required for:
- The grammar files, which need to be in admin/grammars
- The tests, which need to be in test/manual/cedet
- The documentation files, which need to move to doc/misc (and
should probably be flattened.)
Once moved we commit, add CEDET as a remote of Emacs and merge
CEDET/master allowing unrelated histories. We can delete any files
which fall outside of:
- admin/grammars
- test/manual/cedet
- lisp/cedet
- doc/misc
We should also delete any added Makefiles, EDE project files and bash
scripts.
This brings us to the topic of collaborating on this change. I'm not
aware of any strategy for merging which allows for collaboration; so
I've come up with the following hack (comments/adjustments welcome):
1. create a staging repository for CEDET and make the requisite folder
structure changes in it
2. create a branch in the Emacs project and merge allowing unrelated
histories
3. delete any files outside of our target folders and commit with
unresolved conflicts
4. push up the branch and divvy out files/folders for fixing conflicts
5. commit and push as we go
If this sounds like something you'd like to be involved in then I'll
start with steps 1.->3. and follow up when I'm done. If anyone has
a better idea then I'm listening.
(I considered moving the tests, but they have history too and we'd have
to start splitting commits to get them across w/o the rest of upstream
CEDET. Additionally there's nothing preventing the tests from being run
with CEDET in Emacs core. Just start it with --no-init add the test
folder to the load path, load the relevant test file and run it.)
Kind regards,
Edward Steere
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 5:21 ` Edward Steere
@ 2017-01-17 21:06 ` David Engster
2017-01-17 21:19 ` Dmitry Gutov
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-17 21:06 UTC (permalink / raw)
To: Edward Steere; +Cc: Eli Zaretskii, emacs-devel
Edward Steere writes:
> Alright. It shouldn't be too difficult to merge with the commit
> history intact and I agree wrt the tests so I'll make a start of
> porting those tonight.
That's great, thanks. You will need to remove quite some stuff from
there that is not in Emacs, like everything Java related, the Fortran
tests, ede/arduino, cogre...
I did take a look, and the last proper merge was done on Nov 10, 2014. I
think that was right before we switched to git. I also see now that I
did the merges differently than I remembered: I had an 'emacs' branch in
the CEDET repository which mimicked the file system layout from Emacs,
and merged the new CEDET commits there. Then I made one final diff and
committed that to Emacs. So in the end, the Emacs->CEDET merged were
commit-based, but CEDET->Emacs merges were done as one commit, and I
dimly remember that Stefan was OK with that as long as we provided
proper ChangeLogs. So I think it would be OK to do it this way again.
> Wrt the files which are in upstream but not in core do you have any
> experience with what ought to be merged?
Looking at the changes since Nov 10, 2014, there's the new ede/compdb
package. Otherwise, most of the changes are for Semantic and EDE, and
they are mostly by Eric and me, and it is not as much as I feared.
> There are newly supported project types and databases which look like
> they should probably be merged, but there are still more sources. If
> not all of it is appropriate for the merge then perhaps we could look
> at moving future development to one or many ELPA packages.
For now, new files should be ignored if possible, let's merge the core
files first. Then anybody can look at what else is still upstream and
create ELPA packages for it.
If you work on the test suite, I will try to merge the commits since Nov
2014.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 16:36 ` Stephen Leake
2017-01-17 20:36 ` Edward John Steere
@ 2017-01-17 21:10 ` David Engster
2017-01-17 21:25 ` Stephen Leake
1 sibling, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-17 21:10 UTC (permalink / raw)
To: Stephen Leake; +Cc: Edward John Steere, Eli Zaretskii, emacs-devel
Stephen Leake writes:
> Edward John Steere <edward.steere@gmail.com> writes:
>
>>> I understand that you've changed your merge strategy, so please tell
>>> if/when this becomes relevant again.
>>>
>>> Thanks for working on this.
>>
>> Correct. Thanks for your input anyway. Hopefully it wont take too long
>> before I have something to show for my efforts.
>
> I'd like to help with this. Perhaps doing some of the merge work, or by
> running tests; let me know.
Actually, there's one thing which really didn't get much attention
during all those years: the texi files. I'm not sure how much those
diverged between Emacs and CEDET upstream. It was always messy, since in
the initial merge not all docs were imported from upstream. So if you'd
like to take a look at the texi files, that'd be much appreciated.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 21:06 ` David Engster
@ 2017-01-17 21:19 ` Dmitry Gutov
2017-01-17 21:32 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Dmitry Gutov @ 2017-01-17 21:19 UTC (permalink / raw)
To: David Engster, Edward Steere; +Cc: Eli Zaretskii, emacs-devel
On 18.01.2017 00:06, David Engster wrote:
> That's great, thanks. You will need to remove quite some stuff from
> there that is not in Emacs, like everything Java related, the Fortran
> tests, ede/arduino, cogre...
Is that a good idea? If CEDET development is going to proceed inside
Emacs from now on, why would you remove Java support?
Is it in a really bad shape?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 20:36 ` Edward John Steere
@ 2017-01-17 21:22 ` Stephen Leake
2017-01-17 21:23 ` David Engster
1 sibling, 0 replies; 194+ messages in thread
From: Stephen Leake @ 2017-01-17 21:22 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, emacs-devel
Edward John Steere <edward.steere@gmail.com> writes:
> This brings us to the topic of collaborating on this change. I'm not
> aware of any strategy for merging which allows for collaboration; so
> I've come up with the following hack (comments/adjustments welcome):
> 1. create a staging repository for CEDET and make the requisite folder
> structure changes in it
I guess that's on SourceForge
> 2. create a branch in the Emacs project and merge allowing unrelated
> histories
I'm not clear what you are merging here. It should not be the whole of
CEDET; step 3 should be done first.
> 3. delete any files outside of our target folders and commit with
> unresolved conflicts
That gives us a shared base to work on.
> 4. push up the branch and divvy out files/folders for fixing conflicts
Ok.
> 5. commit and push as we go
Ok.
> If this sounds like something you'd like to be involved in then I'll
> start with steps 1.->3. and follow up when I'm done.
Makes sense.
--
-- Stephe
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 20:36 ` Edward John Steere
2017-01-17 21:22 ` Stephen Leake
@ 2017-01-17 21:23 ` David Engster
2017-01-18 10:12 ` Edward Steere
1 sibling, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-17 21:23 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
Edward John Steere writes:
> Our main concern is to maintain the commit history and I think that my
> original approach of merging to CEDET and then back creates too much
> noise.
Merging to the CEDET repo is not needed, since we will abandon it
anyway.
> I think that the best way to go about this is to move everything in the
> CEDET project into folders which mirror their destination in core.
> Changes will be required for:
> - The grammar files, which need to be in admin/grammars
> - The tests, which need to be in test/manual/cedet
> - The documentation files, which need to move to doc/misc (and
> should probably be flattened.)
>
> Once moved we commit, add CEDET as a remote of Emacs and merge
> CEDET/master allowing unrelated histories.
I think it will be less work to simply do the diff|patch game and fixing
a few paths along the way. Since the histories are unrelated, git cannot
really help you with the merges anyway.
> (I considered moving the tests, but they have history too and we'd have
> to start splitting commits to get them across w/o the rest of upstream
> CEDET. Additionally there's nothing preventing the tests from being run
> with CEDET in Emacs core. Just start it with --no-init add the test
> folder to the load path, load the relevant test file and run it.)
I wouldn't worry too much about the history of the tests. The authorship
of the changes should be clear, but at least I don't care much for
granularity here.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 21:10 ` David Engster
@ 2017-01-17 21:25 ` Stephen Leake
0 siblings, 0 replies; 194+ messages in thread
From: Stephen Leake @ 2017-01-17 21:25 UTC (permalink / raw)
To: David Engster; +Cc: Edward John Steere, Eli Zaretskii, emacs-devel
David Engster <david@engster.org> writes:
> Stephen Leake writes:
>> Edward John Steere <edward.steere@gmail.com> writes:
>>
>>>> I understand that you've changed your merge strategy, so please tell
>>>> if/when this becomes relevant again.
>>>>
>>>> Thanks for working on this.
>>>
>>> Correct. Thanks for your input anyway. Hopefully it wont take too long
>>> before I have something to show for my efforts.
>>
>> I'd like to help with this. Perhaps doing some of the merge work, or by
>> running tests; let me know.
>
> Actually, there's one thing which really didn't get much attention
> during all those years: the texi files. I'm not sure how much those
> diverged between Emacs and CEDET upstream. It was always messy, since in
> the initial merge not all docs were imported from upstream. So if you'd
> like to take a look at the texi files, that'd be much appreciated.
Ok, I'll look at the texi files currently in SourceForge and Emacs
CEDET, and make recommendations.
--
-- Stephe
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 21:19 ` Dmitry Gutov
@ 2017-01-17 21:32 ` David Engster
2017-01-18 3:10 ` Lee Hinman
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-17 21:32 UTC (permalink / raw)
To: Dmitry Gutov; +Cc: Edward Steere, Eli Zaretskii, emacs-devel
Dmitry Gutov writes:
> On 18.01.2017 00:06, David Engster wrote:
>
>> That's great, thanks. You will need to remove quite some stuff from
>> there that is not in Emacs, like everything Java related, the Fortran
>> tests, ede/arduino, cogre...
>
> Is that a good idea? If CEDET development is going to proceed inside
> Emacs from now on, why would you remove Java support?
CEDET's Java support was never in Emacs, and the CEDET repository will
not vanish, so we're not really removing anything. Anybody can port the
Java support to Emacs or ELPA later.
> Is it in a really bad shape?
To my knowledge, nobody has been working on it for quite some time, so
I'd be surprised if it worked with today's typical Java code.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 21:32 ` David Engster
@ 2017-01-18 3:10 ` Lee Hinman
2017-01-18 5:31 ` Edward John Steere
0 siblings, 1 reply; 194+ messages in thread
From: Lee Hinman @ 2017-01-18 3:10 UTC (permalink / raw)
To: emacs-devel
David Engster <david@engster.org> writes:
> Dmitry Gutov writes:
>> On 18.01.2017 00:06, David Engster wrote:
>>
>>> That's great, thanks. You will need to remove quite some stuff from
>>> there that is not in Emacs, like everything Java related, the Fortran
>>> tests, ede/arduino, cogre...
>>
>> Is that a good idea? If CEDET development is going to proceed inside
>> Emacs from now on, why would you remove Java support?
>
> CEDET's Java support was never in Emacs, and the CEDET repository will
> not vanish, so we're not really removing anything. Anybody can port the
> Java support to Emacs or ELPA later.
>
>> Is it in a really bad shape?
>
> To my knowledge, nobody has been working on it for quite some time, so
> I'd be surprised if it worked with today's typical Java code.
CEDET's Java support works pretty well actually. I use it every day for
my day job. It'd be great if it could be included (eventually if not
part of this) in Emacs-proper.
Of course it could be improved since it's a little out of date, but
it remains useful.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-18 3:10 ` Lee Hinman
@ 2017-01-18 5:31 ` Edward John Steere
2017-01-18 12:58 ` Stephen Leake
2017-01-18 21:57 ` David Engster
0 siblings, 2 replies; 194+ messages in thread
From: Edward John Steere @ 2017-01-18 5:31 UTC (permalink / raw)
To: Lee Hinman; +Cc: emacs-devel
> CEDET's Java support works pretty well actually. I use it every day for
> my day job. It'd be great if it could be included (eventually if not
> part of this) in Emacs-proper.
>
> Of course it could be improved since it's a little out of date, but
> it remains useful.
I can report the same thing: CEDET's Java support although dated in some
places is very good. I've submitted patches which prevent the parser
from bombing out on diamond syntax and annotations as well as fixing
starry imports, but there are other areas where it's lacking,
e.g. support for static imports.
If we were to bring it up to standard and fix some debilitating
performance issues which crop up on larger projects then it would
compete with many of the projects which try to bring semantic Java
editing to Emacs with server programs. (You can also work around the
performance problems with some hacks which limit search scope
aggressively but that's obviously not ideal.)
I don't understand what's preventing us from porting this and other
aspects of CEDET right away -- other than scope creep perhaps? I would
advise against using upstream as a fallback though because:
a) it's likely to receive even less attention after the merge;
b) most of it doesn't work with the latest Emacs because of the changes
to EIEIO in core;
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-17 21:23 ` David Engster
@ 2017-01-18 10:12 ` Edward Steere
2017-01-18 22:05 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Edward Steere @ 2017-01-18 10:12 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
Patching does sound easier.
Given that we might be moving from upstream entirely it might be worth it to keep the commit history if we can though. I know that git won't make is easy.
If we do go with patching though, and the changes are going to appear in the changelog then how are we going to go about doing that? Would we use the add-change-log command on all of the commits since the last merge?
One disadvantage of all of this is that git blame results would be more difficult to interpret because the change and author would be documented elsewhere.
> On 17 Jan 2017, at 11:23 PM, David Engster <david@engster.org> wrote:
>
> Edward John Steere writes:
>> Our main concern is to maintain the commit history and I think that my
>> original approach of merging to CEDET and then back creates too much
>> noise.
>
> Merging to the CEDET repo is not needed, since we will abandon it
> anyway.
>
>> I think that the best way to go about this is to move everything in the
>> CEDET project into folders which mirror their destination in core.
>> Changes will be required for:
>> - The grammar files, which need to be in admin/grammars
>> - The tests, which need to be in test/manual/cedet
>> - The documentation files, which need to move to doc/misc (and
>> should probably be flattened.)
>>
>> Once moved we commit, add CEDET as a remote of Emacs and merge
>> CEDET/master allowing unrelated histories.
>
> I think it will be less work to simply do the diff|patch game and fixing
> a few paths along the way. Since the histories are unrelated, git cannot
> really help you with the merges anyway.
>
>> (I considered moving the tests, but they have history too and we'd have
>> to start splitting commits to get them across w/o the rest of upstream
>> CEDET. Additionally there's nothing preventing the tests from being run
>> with CEDET in Emacs core. Just start it with --no-init add the test
>> folder to the load path, load the relevant test file and run it.)
>
> I wouldn't worry too much about the history of the tests. The authorship
> of the changes should be clear, but at least I don't care much for
> granularity here.
>
> -David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-18 5:31 ` Edward John Steere
@ 2017-01-18 12:58 ` Stephen Leake
2017-01-18 21:57 ` David Engster
1 sibling, 0 replies; 194+ messages in thread
From: Stephen Leake @ 2017-01-18 12:58 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel, Lee Hinman
Edward John Steere <edward.steere@gmail.com> writes:
> I don't understand what's preventing us from porting this and other
> aspects of CEDET right away -- other than scope creep perhaps?
Yes; let's get the current core CEDET merged first.
It would be best if the other useful parts of CEDET were made into ELPA
packages.
--
-- Stephe
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-18 5:31 ` Edward John Steere
2017-01-18 12:58 ` Stephen Leake
@ 2017-01-18 21:57 ` David Engster
2017-01-19 17:51 ` Edward John Steere
2017-01-21 18:06 ` Eric Ludlam
1 sibling, 2 replies; 194+ messages in thread
From: David Engster @ 2017-01-18 21:57 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel, Lee Hinman
Edward John Steere writes:
> I don't understand what's preventing us from porting this and other
> aspects of CEDET right away -- other than scope creep perhaps? I would
> advise against using upstream as a fallback though because:
> a) it's likely to receive even less attention after the merge;
> b) most of it doesn't work with the latest Emacs because of the changes
> to EIEIO in core;
I'm happy to hear that Java support works for people. Last time I tried
it didn't even parse generics, but I don't code much in Java anymore so
I haven't tried recently.
My worry is indeed feature creep. The CEDET merge fell behind because I
couldn't keep up with the changes in Emacs, most notably the switch to
git and the extensive changes in EIEIO. The code base is very large and
complicated, so I'm against adding more code to Emacs core. Instead, we
should try to make it more modular and put support for certain languages
and project types into separate ELPA projects. This would also make it
easier to share maintainership of CEDET.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-18 10:12 ` Edward Steere
@ 2017-01-18 22:05 ` David Engster
2017-01-19 18:01 ` Edward John Steere
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-18 22:05 UTC (permalink / raw)
To: Edward Steere; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
Edward Steere writes:
> Given that we might be moving from upstream entirely it might be worth
> it to keep the commit history if we can though. I know that git won't
> make is easy.
The problem with using git is that you will have to edit each commit
anyway, at least that's my experience. You usually need to fix up the
ChangeLog entries in the commit message to conform with the Emacs file
layout. Also, one needs to remove entries which touch files that are not
in Emacs, or which are from authors who haven't signed papers with the
FSF.
> If we do go with patching though, and the changes are going to appear
> in the changelog then how are we going to go about doing that? Would
> we use the add-change-log command on all of the commits since the last
> merge?
>
> One disadvantage of all of this is that git blame results would be
> more difficult to interpret because the change and author would be
> documented elsewhere.
Things have gotten easier since the actual ChangeLog files get generated
from the commit message. I would try to manually commit the changes with
proper commit messages, so we would retain the history with the
exception of the date of the change, which would be from the day of the
merge.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-18 21:57 ` David Engster
@ 2017-01-19 17:51 ` Edward John Steere
2017-01-19 20:25 ` Lee Hinman
2017-01-21 18:06 ` Eric Ludlam
1 sibling, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-19 17:51 UTC (permalink / raw)
To: David Engster; +Cc: emacs-devel, Lee Hinman
> My worry is indeed feature creep. The CEDET merge fell behind because I
> couldn't keep up with the changes in Emacs, most notably the switch to
> git and the extensive changes in EIEIO. The code base is very large and
> complicated, so I'm against adding more code to Emacs core.
Alright. I'll get to work on porting the tests again and limit the
tests which I merge to those which will be relevant to the components
which will end up in core.
> Instead, we
> should try to make it more modular and put support for certain languages
> and project types into separate ELPA projects. This would also make it
> easier to share maintainership of CEDET.
>
> -David
I couldn't agree more on this point. I also think that many users are
itching to improve the aspects of CEDET which they use and that a move
like this would make strides in making the project accessible to those
kinds of contributions. Let's get this merge done so that we can get
cracking on the ELPA projects too! :-)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-18 22:05 ` David Engster
@ 2017-01-19 18:01 ` Edward John Steere
2017-01-19 21:57 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-19 18:01 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
> Things have gotten easier since the actual ChangeLog files get generated
> from the commit message. I would try to manually commit the changes with
> proper commit messages, so we would retain the history with the
> exception of the date of the change, which would be from the day of the
> merge.
>
> -David
This sounds like a lot of work and the outcome sounds right.
As I said in my previous email I'll make a start on the tests.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-19 17:51 ` Edward John Steere
@ 2017-01-19 20:25 ` Lee Hinman
2017-01-29 19:25 ` John Wiegley
0 siblings, 1 reply; 194+ messages in thread
From: Lee Hinman @ 2017-01-19 20:25 UTC (permalink / raw)
To: emacs-devel
Edward John Steere <edward.steere@gmail.com> writes:
>> Instead, we should try to make it more modular and put support for
>> certain languages and project types into separate ELPA projects. This
>> would also make it easier to share maintainership of CEDET.
>>
>> -David
>
> I couldn't agree more on this point. I also think that many users are
> itching to improve the aspects of CEDET which they use and that a move
> like this would make strides in making the project accessible to those
> kinds of contributions. Let's get this merge done so that we can get
> cracking on the ELPA projects too! :-)
I just sent off my contribution email to the FSF specifically so I could
help with this, so hopefully it moves forward!
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-19 18:01 ` Edward John Steere
@ 2017-01-19 21:57 ` David Engster
2017-01-19 22:29 ` Karl Fogel
2017-01-22 21:31 ` David Engster
0 siblings, 2 replies; 194+ messages in thread
From: David Engster @ 2017-01-19 21:57 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
Edward John Steere writes:
>> Things have gotten easier since the actual ChangeLog files get generated
>> from the commit message. I would try to manually commit the changes with
>> proper commit messages, so we would retain the history with the
>> exception of the date of the change, which would be from the day of the
>> merge.
>>
>> -David
>
> This sounds like a lot of work and the outcome sounds right.
It's not that bad. 'format-patch' gives me a nice list of patches where
I can correct the paths with 'sed' and fix up the commit messages. It's
only about 100 patches, so I don't think it will take long.
> As I said in my previous email I'll make a start on the tests.
That's great, thanks! I'll push a branch with my progress soon.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-19 21:57 ` David Engster
@ 2017-01-19 22:29 ` Karl Fogel
2017-01-20 22:20 ` David Engster
2017-01-22 21:31 ` David Engster
1 sibling, 1 reply; 194+ messages in thread
From: Karl Fogel @ 2017-01-19 22:29 UTC (permalink / raw)
To: David Engster
Cc: Edward John Steere, Eli Zaretskii, Stephen Leake, emacs-devel
David Engster <deng@randomsample.de> writes:
>Edward John Steere writes:
>>> Things have gotten easier since the actual ChangeLog files get generated
>>> from the commit message. I would try to manually commit the changes with
>>> proper commit messages, so we would retain the history with the
>>> exception of the date of the change, which would be from the day of the
>>> merge.
>>>
>>> -David
>>
>> This sounds like a lot of work and the outcome sounds right.
>
>It's not that bad. 'format-patch' gives me a nice list of patches where
>I can correct the paths with 'sed' and fix up the commit messages. It's
>only about 100 patches, so I don't think it will take long.
Regarding the earlier point about retaining history "with the exception of the date of the change":
'git commit' takes an optional '--date' option:
--date=<date>
Override the author date used in the commit.
So even the date of each change could be correct.
Best regards,
-Karl
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-19 22:29 ` Karl Fogel
@ 2017-01-20 22:20 ` David Engster
2017-01-20 22:40 ` Stefan Monnier
2017-01-21 12:02 ` Eli Zaretskii
0 siblings, 2 replies; 194+ messages in thread
From: David Engster @ 2017-01-20 22:20 UTC (permalink / raw)
To: Karl Fogel; +Cc: Edward John Steere, Eli Zaretskii, Stephen Leake, emacs-devel
Karl Fogel writes:
> David Engster <deng@randomsample.de> writes:
>>Edward John Steere writes:
>>>> Things have gotten easier since the actual ChangeLog files get generated
>>>> from the commit message. I would try to manually commit the changes with
>
>>>> proper commit messages, so we would retain the history with the
>>>> exception of the date of the change, which would be from the day of the
>>>> merge.
>>>>
>>>> -David
>>>
>>> This sounds like a lot of work and the outcome sounds right.
>>
>>It's not that bad. 'format-patch' gives me a nice list of patches where
>>I can correct the paths with 'sed' and fix up the commit messages. It's
>>only about 100 patches, so I don't think it will take long.
>
> Regarding the earlier point about retaining history "with the exception of the date of the change":
>
> 'git commit' takes an optional '--date' option:
>
> --date=<date>
> Override the author date used in the commit.
>
> So even the date of each change could be correct.
Yes, 'git am' does that automatically. However, I always followed the
general rule that the generated ChangeLogs should have the date when the
change enters the Emacs repository, so I'm not sure if I should even
retain the original date?
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-20 22:20 ` David Engster
@ 2017-01-20 22:40 ` Stefan Monnier
2017-01-20 22:57 ` David Engster
2017-01-21 12:02 ` Eli Zaretskii
1 sibling, 1 reply; 194+ messages in thread
From: Stefan Monnier @ 2017-01-20 22:40 UTC (permalink / raw)
To: emacs-devel
> Yes, 'git am' does that automatically. However, I always followed the
> general rule that the generated ChangeLogs should have the date when the
> change enters the Emacs repository, so I'm not sure if I should even
> retain the original date?
AFAIK, Git records the "author date" separately from the "commit date",
so The Right Thing To Do is to use the fancy --date argument to provide
the "author date". The ChangeLog can use the "commit date" if needed.
Stefan
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-20 22:40 ` Stefan Monnier
@ 2017-01-20 22:57 ` David Engster
2017-01-21 0:08 ` Stefan Monnier
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-20 22:57 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier writes:
>> Yes, 'git am' does that automatically. However, I always followed the
>> general rule that the generated ChangeLogs should have the date when the
>> change enters the Emacs repository, so I'm not sure if I should even
>> retain the original date?
>
> AFAIK, Git records the "author date" separately from the "commit date",
> so The Right Thing To Do is to use the fancy --date argument to provide
> the "author date". The ChangeLog can use the "commit date" if needed.
Yes, git tracks 'Author' and 'Committer', each with their own date. So
the ChangeLog generator script would need to use the name from 'Author'
with the date from 'Committer'. But does it actually do that? And
wouldn't it be pretty confusing to have dates in the ChangeLog that are
years apart from those in the git log?
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-20 22:57 ` David Engster
@ 2017-01-21 0:08 ` Stefan Monnier
0 siblings, 0 replies; 194+ messages in thread
From: Stefan Monnier @ 2017-01-21 0:08 UTC (permalink / raw)
To: David Engster; +Cc: emacs-devel
> Yes, git tracks 'Author' and 'Committer', each with their own date. So
> the ChangeLog generator script would need to use the name from 'Author'
> with the date from 'Committer'. But does it actually do that?
If it doesn't, we can change it, so it's not a problem.
> And wouldn't it be pretty confusing to have dates in the ChangeLog
> that are years apart from those in the git log?
That's how things are, by design (tho you can tweak your "git log" to
also output the author date, if you want), so the confusion is not due
to the "--date" argument (and can be fixed after the fact if we decide
so, whereas retroactively fixing the author-date is a lot more
difficult).
Stefan
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-20 22:20 ` David Engster
2017-01-20 22:40 ` Stefan Monnier
@ 2017-01-21 12:02 ` Eli Zaretskii
2017-01-21 18:29 ` Glenn Morris
1 sibling, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-21 12:02 UTC (permalink / raw)
To: David Engster; +Cc: kfogel, edward.steere, stephen_leake, emacs-devel
> From: David Engster <deng@randomsample.de>
> Cc: Edward John Steere <edward.steere@gmail.com>, Eli Zaretskii <eliz@gnu.org>, Stephen Leake <stephen_leake@stephe-leake.org>, emacs-devel@gnu.org
> Date: Fri, 20 Jan 2017 23:20:05 +0100
>
> I always followed the general rule that the generated ChangeLogs
> should have the date when the change enters the Emacs repository
Indeed, that is our rule.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-18 21:57 ` David Engster
2017-01-19 17:51 ` Edward John Steere
@ 2017-01-21 18:06 ` Eric Ludlam
1 sibling, 0 replies; 194+ messages in thread
From: Eric Ludlam @ 2017-01-21 18:06 UTC (permalink / raw)
To: David Engster, Edward John Steere; +Cc: Lee Hinman, emacs-devel
On 01/18/2017 04:57 PM, David Engster wrote:
> My worry is indeed feature creep. The CEDET merge fell behind because I
> couldn't keep up with the changes in Emacs, most notably the switch to
> git and the extensive changes in EIEIO. The code base is very large and
> complicated, so I'm against adding more code to Emacs core. Instead, we
> should try to make it more modular and put support for certain languages
> and project types into separate ELPA projects. This would also make it
> easier to share maintainership of CEDET.
I agree with David. Making it easy to create and maintain different
extensions independent of CEDET core will be a big win.
Eric
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-21 12:02 ` Eli Zaretskii
@ 2017-01-21 18:29 ` Glenn Morris
2017-01-21 18:37 ` Eli Zaretskii
0 siblings, 1 reply; 194+ messages in thread
From: Glenn Morris @ 2017-01-21 18:29 UTC (permalink / raw)
To: Eli Zaretskii
Cc: kfogel, edward.steere, stephen_leake, David Engster, emacs-devel
Eli Zaretskii wrote:
>> I always followed the general rule that the generated ChangeLogs
>> should have the date when the change enters the Emacs repository
>
> Indeed, that is our rule.
That was the rule when ChangeLogs were hand-written, but since the
switch to generated ChangeLogs it does not (and cannot) apply.
Git does not record that date.
I suggest anyone working on a CEDET merge simply ignore such issues.
Ref: http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00102.html
http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00144.html
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-21 18:29 ` Glenn Morris
@ 2017-01-21 18:37 ` Eli Zaretskii
2017-01-21 18:52 ` Glenn Morris
0 siblings, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-21 18:37 UTC (permalink / raw)
To: Glenn Morris; +Cc: kfogel, edward.steere, stephen_leake, deng, emacs-devel
> From: Glenn Morris <rgm@gnu.org>
> Cc: David Engster <deng@randomsample.de>, kfogel@red-bean.com, edward.steere@gmail.com, stephen_leake@stephe-leake.org, emacs-devel@gnu.org
> Date: Sat, 21 Jan 2017 13:29:58 -0500
>
>
> Eli Zaretskii wrote:
>
> >> I always followed the general rule that the generated ChangeLogs
> >> should have the date when the change enters the Emacs repository
> >
> > Indeed, that is our rule.
>
> That was the rule when ChangeLogs were hand-written, but since the
> switch to generated ChangeLogs it does not (and cannot) apply.
> Git does not record that date.
Git obviously does record the commit date, so there's no problem with
that rule.
> I suggest anyone working on a CEDET merge simply ignore such issues.
I suggest they don't.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-21 18:37 ` Eli Zaretskii
@ 2017-01-21 18:52 ` Glenn Morris
2017-01-21 19:50 ` Eli Zaretskii
2017-01-22 22:00 ` David Engster
0 siblings, 2 replies; 194+ messages in thread
From: Glenn Morris @ 2017-01-21 18:52 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: kfogel, edward.steere, stephen_leake, deng, emacs-devel
Eli Zaretskii wrote:
>> >> I always followed the general rule that the generated ChangeLogs
>> >> should have the date when the change enters the Emacs repository
>> >
>> > Indeed, that is our rule.
>>
>> That was the rule when ChangeLogs were hand-written, but since the
>> switch to generated ChangeLogs it does not (and cannot) apply.
>> Git does not record that date.
>
> Git obviously does record the commit date, so there's no problem with
> that rule.
The commit date has no relation to "the date when the change enters the
Emacs repository" (ie, was pushed to Savannah).
If you want a recent example of this, "make ChangeLog" and look at the
dates of "recent" concurrency entries. Some are years old.
Eg git log --fuller 0ccc5d8998a
Both git dates are 2012-08-15, but the correct date would be 2016-12-10:
http://lists.gnu.org/archive/html/emacs-diffs/2016-12/msg00144.html
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-21 18:52 ` Glenn Morris
@ 2017-01-21 19:50 ` Eli Zaretskii
2017-01-21 22:57 ` Paul Eggert
2017-01-22 22:00 ` David Engster
1 sibling, 1 reply; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-21 19:50 UTC (permalink / raw)
To: Glenn Morris; +Cc: kfogel, edward.steere, stephen_leake, deng, emacs-devel
> From: Glenn Morris <rgm@gnu.org>
> Cc: deng@randomsample.de, kfogel@red-bean.com, edward.steere@gmail.com, stephen_leake@stephe-leake.org, emacs-devel@gnu.org
> Date: Sat, 21 Jan 2017 13:52:55 -0500
>
> > Git obviously does record the commit date, so there's no problem with
> > that rule.
>
> The commit date has no relation to "the date when the change enters the
> Emacs repository" (ie, was pushed to Savannah).
It does when you commit locally before pushing. And, as mentioned
here, there's the --date option to control that.
> If you want a recent example of this, "make ChangeLog" and look at the
> dates of "recent" concurrency entries. Some are years old.
That doesn't mean we should drop the rule, just that some people are
not always following rules.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-21 19:50 ` Eli Zaretskii
@ 2017-01-21 22:57 ` Paul Eggert
2017-01-22 16:08 ` Eli Zaretskii
0 siblings, 1 reply; 194+ messages in thread
From: Paul Eggert @ 2017-01-21 22:57 UTC (permalink / raw)
To: Eli Zaretskii
Cc: Glenn Morris, deng, emacs-devel, kfogel, edward.steere,
stephen_leake
>> If you want a recent example of this, "make ChangeLog" and look at the
>> dates of "recent" concurrency entries. Some are years old.
> That doesn't mean we should drop the rule, just that some people are
> not always following rules.
I guess I'm not following this. For example, commit
470e3028d8a741d97349faa8fdeb148d913a49d0 ("Fix the MS-Windows build") has a
commit date of 2015-11-02 19:04:06 2015 +0200, and so "make ChangeLog" dates it
2015-11-02. And yet this commit was merged into master on 2016-12-10, by you, as
part of merge commit 2412a1fc05fe9f89b171d0781c2d530923f48adc ("Support
concurrency in Emacs Lisp"). So when you say "some people are not always
following rules", do you mean that you did this particular merge incorrectly? Or
am I not understanding the rules?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-21 22:57 ` Paul Eggert
@ 2017-01-22 16:08 ` Eli Zaretskii
0 siblings, 0 replies; 194+ messages in thread
From: Eli Zaretskii @ 2017-01-22 16:08 UTC (permalink / raw)
To: Paul Eggert; +Cc: rgm, deng, emacs-devel, kfogel, edward.steere, stephen_leake
> Cc: Glenn Morris <rgm@gnu.org>, kfogel@red-bean.com, edward.steere@gmail.com,
> stephen_leake@stephe-leake.org, deng@randomsample.de, emacs-devel@gnu.org
> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Sat, 21 Jan 2017 14:57:58 -0800
>
> >> If you want a recent example of this, "make ChangeLog" and look at the
> >> dates of "recent" concurrency entries. Some are years old.
> > That doesn't mean we should drop the rule, just that some people are
> > not always following rules.
>
> I guess I'm not following this. For example, commit
> 470e3028d8a741d97349faa8fdeb148d913a49d0 ("Fix the MS-Windows build") has a
> commit date of 2015-11-02 19:04:06 2015 +0200, and so "make ChangeLog" dates it
> 2015-11-02. And yet this commit was merged into master on 2016-12-10, by you, as
> part of merge commit 2412a1fc05fe9f89b171d0781c2d530923f48adc ("Support
> concurrency in Emacs Lisp"). So when you say "some people are not always
> following rules", do you mean that you did this particular merge incorrectly? Or
> am I not understanding the rules?
Commit 2412a1f has its own log message (something unusual for merge
commits, AFAIK), so IMO this example exactly follows the rules as I
understand them.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-19 21:57 ` David Engster
2017-01-19 22:29 ` Karl Fogel
@ 2017-01-22 21:31 ` David Engster
2017-01-24 19:02 ` Edward John Steere
2017-01-27 20:20 ` Edward John Steere
1 sibling, 2 replies; 194+ messages in thread
From: David Engster @ 2017-01-22 21:31 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
David Engster writes:
> Edward John Steere writes:
>> As I said in my previous email I'll make a start on the tests.
>
> That's great, thanks! I'll push a branch with my progress soon.
I just pushed my first try as scratch/last-cedet-merge.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-21 18:52 ` Glenn Morris
2017-01-21 19:50 ` Eli Zaretskii
@ 2017-01-22 22:00 ` David Engster
2017-01-23 1:37 ` Paul Eggert
1 sibling, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-22 22:00 UTC (permalink / raw)
To: Glenn Morris
Cc: kfogel, edward.steere, Eli Zaretskii, stephen_leake, emacs-devel
Glenn Morris writes:
> Eli Zaretskii wrote:
>
>>> >> I always followed the general rule that the generated ChangeLogs
>>> >> should have the date when the change enters the Emacs repository
>>> >
>>> > Indeed, that is our rule.
>>>
>>> That was the rule when ChangeLogs were hand-written, but since the
>>> switch to generated ChangeLogs it does not (and cannot) apply.
>>> Git does not record that date.
>>
>> Git obviously does record the commit date, so there's no problem with
>> that rule.
>
> The commit date has no relation to "the date when the change enters the
> Emacs repository" (ie, was pushed to Savannah).
>
> If you want a recent example of this, "make ChangeLog" and look at the
> dates of "recent" concurrency entries. Some are years old.
>
> Eg git log --fuller 0ccc5d8998a
> Both git dates are 2012-08-15, but the correct date would be 2016-12-10:
> http://lists.gnu.org/archive/html/emacs-diffs/2016-12/msg00144.html
Yes, that's a problem with long-living feature branches. It'd be nice if
'make ChangeLog' would use the commit date of the merge commit for all
commits that entered Emacs through a branch merge.
If that isn't easily possible, the person who does the merge could do a
filter-branch before merging, setting GIT_COMMITTER_DATE to the current
date (if 'make ChangeLog' would actually use the committer date, which
AFAICS it currently does not).
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-22 22:00 ` David Engster
@ 2017-01-23 1:37 ` Paul Eggert
0 siblings, 0 replies; 194+ messages in thread
From: Paul Eggert @ 2017-01-23 1:37 UTC (permalink / raw)
To: David Engster, Glenn Morris
Cc: kfogel, edward.steere, Eli Zaretskii, stephen_leake, emacs-devel
David Engster wrote:
> Yes, that's a problem with long-living feature branches. It'd be nice if
> 'make ChangeLog' would use the commit date of the merge commit for all
> commits that entered Emacs through a branch merge.
As I understand it, that's not easy since git does not prefer one branch to the
other in a merge, so any scheme we come up with will be as likely to redate
commits already in the master as to redate commits entering through the merge.
> If that isn't easily possible, the person who does the merge could do a
> filter-branch before merging, setting GIT_COMMITTER_DATE to the current
> date
Something like that should work. We aren't doing that now, which causes problems
like the confusion noted.
>(if 'make ChangeLog' would actually use the committer date, which
> AFAICS it currently does not).
gitlog-to-changelog uses %ct, not %at, for its 'git log' format, so 'make
ChangeLog' should already be using committer date.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-22 21:31 ` David Engster
@ 2017-01-24 19:02 ` Edward John Steere
2017-01-26 19:54 ` Edward John Steere
2017-01-27 20:20 ` Edward John Steere
1 sibling, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-24 19:02 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
> I just pushed my first try as scratch/last-cedet-merge.
>
> -David
Just pinging back here. Making progress. Will have a first attempt at
the tests up tomorrow night. Had some other stuff keeping me away from
my PC at home lately.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-24 19:02 ` Edward John Steere
@ 2017-01-26 19:54 ` Edward John Steere
2017-01-26 21:06 ` David Engster
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-26 19:54 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
> Just pinging back here. Making progress. Will have a first attempt at
> the tests up tomorrow night. Had some other stuff keeping me away from
> my PC at home lately.
Having some difficulty pushing up my branch. This is my first time
pushing up a branch on emacs.git. My understanding is that team
membership is sufficient for access rights.
I'm getting a "connection reset by peer" error every time I try to push
as follows:
$ git push origin scratch/merge-cedet-tests
Counting objects: 2548, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (2336/2336), done.
fatal: sha1 file '<stdout>' write error: Connection reset by peer
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'git://git.savannah.gnu.org/emacs.git'
After reading a blog post I thought that it might have something to do
with the push being too large so I added the following to ~/.ssh/config
in the hopes that regular null packets would keep the connection alive.
Host git.savannah.gnu.org
ServerAliveInterval 5
No luck though; so I tried pushing up only three commits and that failed
with the same message as well.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-26 19:54 ` Edward John Steere
@ 2017-01-26 21:06 ` David Engster
2017-01-27 4:38 ` Edward Steere
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-26 21:06 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
Edward John Steere writes:
>> Just pinging back here. Making progress. Will have a first attempt at
>> the tests up tomorrow night. Had some other stuff keeping me away from
>> my PC at home lately.
>
> Having some difficulty pushing up my branch. This is my first time
> pushing up a branch on emacs.git. My understanding is that team
> membership is sufficient for access rights.
>
> I'm getting a "connection reset by peer" error every time I try to push
> as follows:
>
> $ git push origin scratch/merge-cedet-tests
> Counting objects: 2548, done.
> Delta compression using up to 8 threads.
> Compressing objects: 100% (2336/2336), done.
> fatal: sha1 file '<stdout>' write error: Connection reset by peer
> fatal: The remote end hung up unexpectedly
> error: failed to push some refs to 'git://git.savannah.gnu.org/emacs.git'
You are trying to push with the git protocol, not with ssh. You need to
use <membername>@git.sv.gnu.org:/srv/git/emacs.git. See also
http://savannah.gnu.org/git/?group=emacs
https://www.emacswiki.org/emacs/GitQuickStartForEmacsDevs
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-26 21:06 ` David Engster
@ 2017-01-27 4:38 ` Edward Steere
0 siblings, 0 replies; 194+ messages in thread
From: Edward Steere @ 2017-01-27 4:38 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
> On 26 Jan 2017, at 11:06 PM, David Engster <deng@randomsample.de> wrote:
>
> Edward John Steere writes:
>>> Just pinging back here. Making progress. Will have a first attempt at
>>> the tests up tomorrow night. Had some other stuff keeping me away from
>>> my PC at home lately.
>>
>> Having some difficulty pushing up my branch. This is my first time
>> pushing up a branch on emacs.git. My understanding is that team
>> membership is sufficient for access rights.
>>
>> I'm getting a "connection reset by peer" error every time I try to push
>> as follows:
>>
>> $ git push origin scratch/merge-cedet-tests
>> Counting objects: 2548, done.
>> Delta compression using up to 8 threads.
>> Compressing objects: 100% (2336/2336), done.
>> fatal: sha1 file '<stdout>' write error: Connection reset by peer
>> fatal: The remote end hung up unexpectedly
>> error: failed to push some refs to 'git://git.savannah.gnu.org/emacs.git'
>
> You are trying to push with the git protocol, not with ssh. You need to
> use <membername>@git.sv.gnu.org:/srv/git/emacs.git. See also
>
> http://savannah.gnu.org/git/?group=emacs
> https://www.emacswiki.org/emacs/GitQuickStartForEmacsDevs
>
> -David
Thanks David. I'll try again tonight.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-22 21:31 ` David Engster
2017-01-24 19:02 ` Edward John Steere
@ 2017-01-27 20:20 ` Edward John Steere
2017-01-27 21:04 ` David Engster
1 sibling, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-27 20:20 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
David Engster <deng@randomsample.de> writes:
>> Edward John Steere writes:
>>> As I said in my previous email I'll make a start on the tests.
>>
>> That's great, thanks! I'll push a branch with my progress soon.
>
> I just pushed my first try as scratch/last-cedet-merge.
>
> -David
I've just pushed up a fairly rough attempt at merging the tests in
scratch/merge-cedet-tests (it looks like tests were only ever merged to
Emacs once.) I took the following approach:
* I used git to format patches per test file.
* changed the destination of the file in each patch to match the Emacs
manual testing directory;
* fixed any commit messages which failed the commit hook;
* added a final commit to cleanup; which included the removal of
duplicated test files not moved by the patching process and the
removal of dependencies on language/project support which we're not
merging
The consequence of this approach is that my branch will add 316 commits.
Many of the commit messages aren't up to scratch (they pass the commit
hook but don't match the requirements outlined in CONTRIBUTE). I'm
going to have to spend some time fixing the rest of the commits. I
wanted to ask whether we should consider squashing all 316 commits into
a "cedet-merge" commit since the changes are going to be documented in
the ChangeLog.
Finally; the tests don't run with the CEDET in Emacs. The first failure
is caused by a missing SRecode template -- which I imagine David will
have added on his branch. I haven't checked what happens when his and
my changes are merged.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-27 20:20 ` Edward John Steere
@ 2017-01-27 21:04 ` David Engster
2017-01-28 9:23 ` Edward John Steere
2017-01-28 13:45 ` Edward John Steere
0 siblings, 2 replies; 194+ messages in thread
From: David Engster @ 2017-01-27 21:04 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
Edward John Steere writes:
> David Engster <deng@randomsample.de> writes:
>>> Edward John Steere writes:
>>>> As I said in my previous email I'll make a start on the tests.
>>>
>>> That's great, thanks! I'll push a branch with my progress soon.
>>
>> I just pushed my first try as scratch/last-cedet-merge.
>>
>> -David
>
> I've just pushed up a fairly rough attempt at merging the tests in
> scratch/merge-cedet-tests
Thank you.
> (it looks like tests were only ever merged to Emacs once.)
Yes.
> I took the following approach:
>
> * I used git to format patches per test file.
> * changed the destination of the file in each patch to match the Emacs
> manual testing directory;
> * fixed any commit messages which failed the commit hook;
> * added a final commit to cleanup; which included the removal of
> duplicated test files not moved by the patching process and the
> removal of dependencies on language/project support which we're not
> merging
>
> The consequence of this approach is that my branch will add 316 commits.
> Many of the commit messages aren't up to scratch (they pass the commit
> hook but don't match the requirements outlined in CONTRIBUTE). I'm
> going to have to spend some time fixing the rest of the commits. I
> wanted to ask whether we should consider squashing all 316 commits into
> a "cedet-merge" commit since the changes are going to be documented in
> the ChangeLog.
There seems to be a misunderstanding here: The ChangeLog is generated
from the commit log and not written separately anymore.
I don't think it makes sense to fix up all the commits messages. The
commits you've merged go back to the beginning of CEDET, and I don't
think there's any sense it writing proper ChangeLogs for them now. They
are only tests, after all. However, it is very good that we have the
history on your branch, because it makes it much easier to check if all
authors have signed papers (last I asked, authors of non-trivial tests
were also required to have papers signed with the FSF).
In my opinion, once we have decided which tests to keep and fixed them,
we should squash them and commit it as a new test suite.
> Finally; the tests don't run with the CEDET in Emacs.
That's totally expected. I'll take a look at them.
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-27 21:04 ` David Engster
@ 2017-01-28 9:23 ` Edward John Steere
2017-01-29 21:34 ` David Engster
2017-01-28 13:45 ` Edward John Steere
1 sibling, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-01-28 9:23 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
> There seems to be a misunderstanding here: The ChangeLog is generated
> from the commit log and not written separately anymore.
Alright. Out of interest: is there a command for generating all of the
entries for a commit range? I'm only aware of C-x 4 a
(add-change-log-entry-other-window) which seems to generate a change log
entry for the current file and only for the latest commit.
> I don't think it makes sense to fix up all the commits messages. The
> commits you've merged go back to the beginning of CEDET, and I don't
> think there's any sense it writing proper ChangeLogs for them now. They
> are only tests, after all. However, it is very good that we have the
> history on your branch, because it makes it much easier to check if all
> authors have signed papers (last I asked, authors of non-trivial tests
> were also required to have papers signed with the FSF).
>
> In my opinion, once we have decided which tests to keep and fixed them,
> we should squash them and commit it as a new test suite.
Agreed.
>> Finally; the tests don't run with the CEDET in Emacs.
>
> That's totally expected. I'll take a look at them.
>
> -David
I've just made some fixes to the tests this morning (I had messed up the
merge of ia-utest.el and missed the whole of the cpproot directory for
utests.) With that change the tests run with my current Emacs (which
runs the modified CEDET that I created by merging Emacs-CEDET -> CEDET.)
To anyone who has pulled my branch, scratch/merge-cedet-tests, I'd just
ask that you git pull -f because I rewrote that branches history to
correct my mistake.
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-27 21:04 ` David Engster
2017-01-28 9:23 ` Edward John Steere
@ 2017-01-28 13:45 ` Edward John Steere
1 sibling, 0 replies; 194+ messages in thread
From: Edward John Steere @ 2017-01-28 13:45 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
> That's totally expected. I'll take a look at them.
>
> -David
I've just pushed another update to my branch which fixes another mistake
in ia-utest, adds an include for the unit test root file and adds test
resource files which I missed the first time round. I've created a
local branch where I merged my branch to yours to see how we're doing.
Here's what I've found after running both the unit and integration
tests:
* Utests in Error
** EDE Security
(error "Corrupt object on disk")
This is an error caused by the changes to how EIEIO objects auto load.
They no longer include their parents as part of the auto load so all
classes and class parents which are read from file must have their
definitions loaded prior to de-serialising (this includes the entire
inheritance hierarchy for the target class).
I added the following requires to the body of `ede-proj-load' to rectify
this (it's a total hack though):
(require 'ede/proj-prog)
(require 'ede/proj-aux)
(require 'ede/proj-elisp)
(require 'ede/proj-scheme)
(require 'ede/proj-misc)
(require 'ede/proj-prog)
(require 'ede/proj-archive)
(require 'ede/proj-shared)
(require 'ede/proj-info)
(require 'semantic/ede-grammar)
Note that I haven't added this change here.
** Project Detection Tests
I think that this also has to do with the changes to how classes are
auto loaded, but I'm not sure.
Running ede: project detection tests ...
ERROR: (wrong-type-argument (or eieio-object class) nil obj)
Running ede: project detect linux extra ...
ERROR: (wrong-type-argument (or eieio-object class) nil obj)
** Test FMT
(error "Cannot open tests/test-fmt.el for format tests")
I debugged this one and it looks like it can't open test-fmt.el because
semantic mode isn't active in Emacs lisp.
** Wisent Calculator
Running wisent calculator ...
ERROR: (void-function wisent-calc-utest)
This function doesn't seem to exist in either repo (?)
** Waiting for Key Press
Running working: wait-for-keypress ...
ERROR: (void-function working-wait-for-keypress)
This function doesn't seem to be in your branch.
** Interactive Test
(error "Invalid face" modeline)
I'm not sure where this face is defined, but it is indeed undefined
during the test.
** C Parser Tests
ERROR: (error "TAG INTERNAL DIFF: :prototype-flag :enum-type")
Running semantic: C parser (ERT) ...
ERROR: (ert-test-failed ((should (test-c-check-tags-length actual 1)) :form (test-c-check-tags-length nil 1) :value nil :explanation "Wrong number of tags. Expected: 1, actual: 0."))
Running semantic: C preprocessor ...
ERROR: (error #("Found: >> int EDEPART (int b) << Expected: >> int C (int b) <<" 10 13 (face font-lock-type-face) 14 21 (face font-lock-function-name-face) 23 26 (face font-lock-type-face) 27 28 (face font-lock-variable-name-face) 47 50 (face font-lock-type-face) 51 52 (face font-lock-function-name-face) 54 57 (face font-lock-type-face) 58 59 (face font-lock-variable-name-face)))
Are the new grammar files being compiled included correctly?
** Analyser Tests
ERROR: (invalid-slot-name "#<semantic-scope-cache semantic-scope-cache>" :name)
Haven't looked any further into this failure.
** SRecode Tests
ERROR: (error "Entry #<srecode-utest-output srecode-utest-output> failed; expected: --[;; An includable we could use.
Running srecode: fields ...
ERROR: (error "Calculated size of #<srecode-field srecode-field> was not 5")
Running srecode: project ...
ERROR: (error "Project template not found when in project")
Haven't looked into this one either.
* Itests
Break at first tag comparison (so they should get further when the
Utests are fixed.)
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-19 20:25 ` Lee Hinman
@ 2017-01-29 19:25 ` John Wiegley
0 siblings, 0 replies; 194+ messages in thread
From: John Wiegley @ 2017-01-29 19:25 UTC (permalink / raw)
To: Lee Hinman; +Cc: emacs-devel
>>>>> "LH" == Lee Hinman <lee@writequit.org> writes:
>> I couldn't agree more on this point. I also think that many users are
>> itching to improve the aspects of CEDET which they use and that a move like
>> this would make strides in making the project accessible to those kinds of
>> contributions. Let's get this merge done so that we can get cracking on the
>> ELPA projects too! :-)
LH> I just sent off my contribution email to the FSF specifically so I could
LH> help with this, so hopefully it moves forward!
Let's start this month, I can make time for it.
As a first step: What information is needed about CEDET, to correctly inject
it into the distribution tarball? I'm betting it's slightly more than just a
list of files mapped to tarball locations.
--
John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-28 9:23 ` Edward John Steere
@ 2017-01-29 21:34 ` David Engster
2017-01-31 16:51 ` Lars Ingebrigtsen
0 siblings, 1 reply; 194+ messages in thread
From: David Engster @ 2017-01-29 21:34 UTC (permalink / raw)
To: Edward John Steere; +Cc: Eli Zaretskii, Stephen Leake, emacs-devel
Edward John Steere writes:
>> There seems to be a misunderstanding here: The ChangeLog is generated
>> from the commit log and not written separately anymore.
>
> Alright. Out of interest: is there a command for generating all of the
> entries for a commit range? I'm only aware of C-x 4 a
> (add-change-log-entry-other-window) which seems to generate a change log
> entry for the current file and only for the latest commit.
You can use 'C-x 4 A' in a diff buffer. I usually do this:
. Do 'M-x vc-dir' and choose repository
. Hit 'D' to create a diff for the directory you want to create a
ChangeLog for
. Hit 'C-X 4 A'
-David
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-29 21:34 ` David Engster
@ 2017-01-31 16:51 ` Lars Ingebrigtsen
2017-01-31 18:48 ` Ted Zlatanov
0 siblings, 1 reply; 194+ messages in thread
From: Lars Ingebrigtsen @ 2017-01-31 16:51 UTC (permalink / raw)
To: David Engster; +Cc: emacs-devel
David Engster <deng@randomsample.de> writes:
>> Alright. Out of interest: is there a command for generating all of the
>> entries for a commit range? I'm only aware of C-x 4 a
>> (add-change-log-entry-other-window) which seems to generate a change log
>> entry for the current file and only for the latest commit.
>
> You can use 'C-x 4 A' in a diff buffer. I usually do this:
>
> . Do 'M-x vc-dir' and choose repository
>
> . Hit 'D' to create a diff for the directory you want to create a
> ChangeLog for
>
> . Hit 'C-X 4 A'
Oh, nice! Thanks. Didn't know about that one...
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-31 16:51 ` Lars Ingebrigtsen
@ 2017-01-31 18:48 ` Ted Zlatanov
0 siblings, 0 replies; 194+ messages in thread
From: Ted Zlatanov @ 2017-01-31 18:48 UTC (permalink / raw)
To: emacs-devel
On Tue, 31 Jan 2017 17:51:42 +0100 Lars Ingebrigtsen <larsi@gnus.org> wrote:
LI> David Engster <deng@randomsample.de> writes:
>>> Alright. Out of interest: is there a command for generating all of the
>>> entries for a commit range? I'm only aware of C-x 4 a
>>> (add-change-log-entry-other-window) which seems to generate a change log
>>> entry for the current file and only for the latest commit.
>>
>> You can use 'C-x 4 A' in a diff buffer. I usually do this:
>>
>> . Do 'M-x vc-dir' and choose repository
>>
>> . Hit 'D' to create a diff for the directory you want to create a
>> ChangeLog for
>>
>> . Hit 'C-X 4 A'
LI> Oh, nice! Thanks. Didn't know about that one...
THANK YOU
David, can you add that method to emacs.git/CONTRIBUTE? Right now it
only has the `add-change-log-entry-other-window' way. Or I can do it if
you prefer...
Ted
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-01-12 19:32 CEDET Merge Edward John Steere
2017-01-12 19:45 ` Eli Zaretskii
2017-01-12 20:10 ` Bastian Beischer
@ 2017-09-23 11:38 ` Charles A. Roelli
2017-09-23 12:55 ` Edward John Steere
2 siblings, 1 reply; 194+ messages in thread
From: Charles A. Roelli @ 2017-09-23 11:38 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel
> From: Edward John Steere <edward.steere@gmail.com>
> Date: Thu, 12 Jan 2017 21:32:36 +0200
>
> Hello Everyone,
>
> I've been working on a branch in upstream CEDET which brings it up to
> date with the changes which have been made in Emacs core. I started
> this work with the intention of simplifying the merge process from CEDET
> upstream into core so that users can benefit from improvements to CEDET
> more easily. I found that the divergence between the two versions of
> CEDET has grown quite a bit and all of my work has been dedicated to
> getting it to run on Emacs master (26?).
>
> My branch now passes all of CEDETs tests when built against Emacs
> @512e988. I'd like to get these changes synchronised with Emacs core
> and have my branch merged to upstream (i.e. CEDET on source forge).
>
> This could be the first step with the second being a repackaging of
> upstream so that it only contains the parts which are under active
> development and can be installed via ELPA.
>
> May I contribute my changes to a branch on the Savannah repository for
> review/commentary? (If yes, then It'll take a little bit of time to
> merge the changes in my branch of CEDET back into Emacs core before I
> actually push them up.)
>
> Kind regards,
>
> Edward Steere
Does anyone know if the changes were brought into Emacs? It looks
like the merge branch got reasonably far:
http://git.savannah.gnu.org/cgit/emacs.git/log/?h=scratch/last-cedet-merge
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-09-23 11:38 ` Charles A. Roelli
@ 2017-09-23 12:55 ` Edward John Steere
2017-09-24 8:24 ` Charles A. Roelli
0 siblings, 1 reply; 194+ messages in thread
From: Edward John Steere @ 2017-09-23 12:55 UTC (permalink / raw)
To: Charles A. Roelli; +Cc: emacs-devel
>> From: Edward John Steere <edward.steere@gmail.com>
>> Date: Thu, 12 Jan 2017 21:32:36 +0200
>>
>> Hello Everyone,
>>
>> I've been working on a branch in upstream CEDET which brings it up to
>> date with the changes which have been made in Emacs core. I started
>> this work with the intention of simplifying the merge process from CEDET
>> upstream into core so that users can benefit from improvements to CEDET
>> more easily. I found that the divergence between the two versions of
>> CEDET has grown quite a bit and all of my work has been dedicated to
>> getting it to run on Emacs master (26?).
>>
>> My branch now passes all of CEDETs tests when built against Emacs
>> @512e988. I'd like to get these changes synchronised with Emacs core
>> and have my branch merged to upstream (i.e. CEDET on source forge).
>>
>> This could be the first step with the second being a repackaging of
>> upstream so that it only contains the parts which are under active
>> development and can be installed via ELPA.
>>
>> May I contribute my changes to a branch on the Savannah repository for
>> review/commentary? (If yes, then It'll take a little bit of time to
>> merge the changes in my branch of CEDET back into Emacs core before I
>> actually push them up.)
>>
>> Kind regards,
>>
>> Edward Steere
>
> Does anyone know if the changes were brought into Emacs? It looks
> like the merge branch got reasonably far:
>
> http://git.savannah.gnu.org/cgit/emacs.git/log/?h=scratch/last-cedet-merge
Hi Charles,
To my knowledge these changes never made it into Emacs. In fact, a few
things changed since my first email:
- David Engster got involved (he's been responsible for merges in the
past if I remember correctly).
- I was informed that my branch included elements of CEDET which were
not intended to reach core (COGRE being a good example).
- We divided up the work of merging tests and merging CEDET and since
David had experience with this work he went ahead with the core
elements.
At the same time as we were working on the merge we also started
discussing the possibility of changing the way that CEDET is
distributed. In particular, we discussed the use of ELPA as a
distribution channel. I originally argued in favour of this move
because I think that it's widely regarded that upstream CEDET is
difficult to install and setup with Emacs. I also believe that these
difficulties in installing and setting it up have hampered it's adoption
and development (although this is mostly a suspicion based on various
blog posts which I've read about CEDET and my own experience in getting
started with, and then using it).
There were objections to making CEDET a package. These related to the
difficulties which the maintainers have experienced in the past with
regards to supporting multiple versions of Emacs. After some discussion
I deferred to their wisdom. I agreed to assist with bringing the parts
of CEDET which are currently in Emacs core up to date and with the idea
that remaining pieces should probably live on in ELPA as packages.
However, the discussion continued. There was renewed talk of developing
CEDET (as well as other larger packages which are distributed with
Emacs) separately to Emacs and that these packages should be brought in
as part of the tarball preparation step during releases (and for what
it's worth I think that this would be a better situation if we could
work through the problems raised.)
I believe that where these developments ended was with David's objection
to eventually pulling CEDET out of core (to be developed in the
aforementioned way) because of the problems which he raised in
developing it separately to Emacs core.
The problem which I face, without the help of those more experienced
than I, is that I don't have enough context on how to resolve some of
the problems which arise as part of doing a partial merge of CEDET into
core. I'm not an expert wrt to the CEDET project -- I'm a user and an
occasional hacker who has an understanding of the project and wants to
give back, help it grow and enjoy the benefits of this growth and
improvement to Emacs.
I would be happy to discuss possibilities for continuing this
development.
I think that CEDET has more potential than that which has been exploited
thus far. I know that there are performance problems when working with
larger projects and I know that these aren't intractable, they would
require that we continue to develop it, reconsider some of the
mechanisms by which it operates and make better use of the tools
available to us in Emacs.
Kind regards,
Edward Steere
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
2017-09-23 12:55 ` Edward John Steere
@ 2017-09-24 8:24 ` Charles A. Roelli
0 siblings, 0 replies; 194+ messages in thread
From: Charles A. Roelli @ 2017-09-24 8:24 UTC (permalink / raw)
To: Edward John Steere; +Cc: emacs-devel
Thanks for your detailed response.
> The problem which I face, without the help of those more experienced
> than I, is that I don't have enough context on how to resolve some of
> the problems which arise as part of doing a partial merge of CEDET into
> core. I'm not an expert wrt to the CEDET project -- I'm a user and an
> occasional hacker who has an understanding of the project and wants to
> give back, help it grow and enjoy the benefits of this growth and
> improvement to Emacs.
Can you say which parts of the merge caused difficulty? I'd like to
help move the process along, if it's possible (though I'm also not a
frequent Elisp hacker).
Also, do you know which parts of CEDET were going to be offered as
ELPA packages? You mentioned COGRE already -- were there any others?
^ permalink raw reply [flat|nested] 194+ messages in thread
* Re: CEDET Merge
@ 2017-09-26 18:31 Edward John Steere
0 siblings, 0 replies; 194+ messages in thread
From: Edward John Steere @ 2017-09-26 18:31 UTC (permalink / raw)
To: Charles A. Roelli; +Cc: emacs-devel
> Thanks for your detailed response.
>
>> The problem which I face, without the help of those more experienced
>> than I, is that I don't have enough context on how to resolve some of
>> the problems which arise as part of doing a partial merge of CEDET into
>> core. I'm not an expert wrt to the CEDET project -- I'm a user and an
>> occasional hacker who has an understanding of the project and wants to
>> give back, help it grow and enjoy the benefits of this growth and
>> improvement to Emacs.
>
> Can you say which parts of the merge caused difficulty? I'd like to
> help move the process along, if it's possible (though I'm also not a
> frequent Elisp hacker).
That's great. I'd be interested in collaborating with you.
I think that the biggest problem which I faced was in untangling the
dependencies which had been created between code in files which exist in
both core and upstream and some of the newer files which only exist in
upstream. Some of these dependencies don't seem to be correct. For
example; there is now an indirect link between the parser and java
support and not in the downwards direction but from the parser up to
java support (!?)
Others dependencies appear to be valid but exist between code which
should be merged and which shouldn't. This made my approach of trying
to preserve history very challenging because I not only had to ensure
that the roots of patches from CEDET matched the correct destination in
their new home, but I also had to resolve conflicts where they diverged
and simultaneously remove dependencies where they were built up between
those parts which were destined for core and those which were not.
Dependency issues caused problems when trying to bootstrap Emacs on my
branch which had the whole of CEDET merged. I did receive some help
from Eli at that point, but didn't get very far before David got
involved and started to drive that side of things.
Unfortunately, this vague description is the best I can do without
diving in again.
> Also, do you know which parts of CEDET were going to be offered as
> ELPA packages? You mentioned COGRE already -- were there any others?
What follows is a (possibly non-exhaustive) list of the parts of CEDET
which I don't think were intended to reach core (gathered by diffing
trees and combining that with what I remember). This is based on the
premise that if it wasn't in core previously then it shouldn't be merged
-- which is what was agreed upon. Looking at the list though this does
exclude a lot of good stuff.
- Everything in contrib (since I don't think that any of it is in
core) including:
- eassist
- ede-gnustep
- semantic-ectag-scala
- semnatic-tag-folding
- wisent-csharp
- wisent-php
- wisent-ruby
- cedet-java and related including:
- java-tags
- java
- jvm-base
- cedet-graphviz
- Various ede extensions
- ant
- maven
- compdb
- android
- java-root
- arduino
- lein2
- parts of db:
- db-cscope
- db-mozrepl
- db-javap
- db-mk
- support for ectags:
- ectags/util
- ectags/lang2
- ectags/parse
- ectags/lang
- ectags/db
- more bovine parsers:
- clang
- f90
- erlang
- canned configs
- db-search
^ permalink raw reply [flat|nested] 194+ messages in thread
end of thread, other threads:[~2017-09-26 18:31 UTC | newest]
Thread overview: 194+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-28 15:31 CEDET merge Chong Yidong
2009-09-28 17:31 ` Ulrich Mueller
2009-09-28 17:55 ` Chong Yidong
2009-09-28 18:42 ` Ulrich Mueller
2009-09-28 19:30 ` Chong Yidong
2009-09-28 20:03 ` Ulrich Mueller
2009-09-28 20:20 ` Rupert Swarbrick
2009-09-28 22:16 ` Ulrich Mueller
2009-09-28 17:47 ` Eli Zaretskii
2009-09-28 18:00 ` Eli Zaretskii
2009-09-28 18:25 ` Chong Yidong
2009-09-28 19:23 ` Eli Zaretskii
2009-09-28 19:27 ` Andreas Schwab
2009-09-28 18:20 ` Phil Hagelberg
2009-09-28 22:10 ` Chong Yidong
2009-09-28 22:25 ` Phil Hagelberg
2009-09-30 16:38 ` Phil Hagelberg
2009-09-30 17:29 ` Chong Yidong
2009-09-30 21:43 ` Phil Hagelberg
2009-10-01 1:19 ` Chong Yidong
2009-10-01 3:20 ` Phil Hagelberg
2009-10-01 5:14 ` Phil Hagelberg
2009-10-01 7:07 ` Stefan Monnier
2009-10-02 17:46 ` Phil Hagelberg
2010-03-17 18:24 ` progress-reporter (was: CEDET merge) Michael Albinus
2009-09-28 19:34 ` CEDET merge Andreas Schwab
2009-09-28 20:20 ` Andreas Schwab
2009-09-28 20:20 ` Alan Mackenzie
2009-09-28 21:57 ` Chong Yidong
2009-09-29 4:28 ` Glenn Morris
2009-09-29 11:28 ` Eric M. Ludlam
2009-09-30 9:32 ` Juanma Barranquero
2009-09-30 18:38 ` Eli Zaretskii
2009-09-30 19:32 ` Juanma Barranquero
2009-09-30 10:29 ` Sascha Wilde
2009-10-01 10:58 ` Sascha Wilde
2009-10-01 11:38 ` Eric M. Ludlam
2009-10-01 12:51 ` Sascha Wilde
2009-10-01 16:28 ` Sascha Wilde
2009-10-03 13:07 ` Eric M. Ludlam
2009-10-03 21:01 ` Sascha Wilde
2009-10-06 16:15 ` Sascha Wilde
2009-10-06 17:51 ` Chong Yidong
2009-10-07 9:34 ` Problems with EDE (was: CEDET merge) Sascha Wilde
2009-10-07 9:49 ` Problems with EDE Sascha Wilde
2009-10-07 16:32 ` Eric M. Ludlam
2009-10-08 1:51 ` Chong Yidong
2009-10-08 2:17 ` Chong Yidong
2009-10-08 9:53 ` Sascha Wilde
2009-10-08 20:51 ` Sascha Wilde
2009-10-08 12:04 ` Eric M. Ludlam
2009-10-08 13:38 ` Miles Bader
2009-10-08 13:46 ` Sascha Wilde
2009-10-08 14:16 ` Chong Yidong
2009-10-08 19:46 ` Sascha Wilde
2009-10-08 14:11 ` Chong Yidong
2009-10-08 14:16 ` David Kastrup
2009-10-14 1:56 ` Eric M. Ludlam
2009-10-08 18:32 ` defalias customize-* in ede.el (was: Problems with EDE) Reiner Steib
2009-10-08 20:58 ` Problems with EDE Sascha Wilde
2009-10-08 22:15 ` Chong Yidong
2009-10-09 8:03 ` Eli Zaretskii
2009-10-09 12:15 ` Sascha Wilde
2009-10-15 3:45 ` Eric M. Ludlam
2009-10-15 8:58 ` Sascha Wilde
2009-10-15 14:38 ` Chong Yidong
2009-10-17 14:27 ` Chong Yidong
2009-10-20 13:22 ` Sascha Wilde
2009-10-14 2:34 ` Eric M. Ludlam
2009-10-09 12:34 ` Sascha Wilde
2009-10-09 12:42 ` Sascha Wilde
2009-10-10 0:24 ` Eric M. Ludlam
2009-10-10 7:34 ` Sascha Wilde
2009-10-15 3:05 ` Eric M. Ludlam
2009-10-09 17:10 ` Andreas Schwab
2009-10-09 18:08 ` Chong Yidong
2009-10-09 18:54 ` Sascha Wilde
2009-10-09 19:14 ` Sascha Wilde
2009-10-09 20:33 ` Chong Yidong
2009-10-09 21:19 ` Sascha Wilde
2009-10-14 2:43 ` Eric M. Ludlam
2009-10-09 19:46 ` Eric M. Ludlam
2009-10-08 22:21 ` Chong Yidong
2009-10-03 20:10 ` CEDET merge Chong Yidong
2009-10-03 20:31 ` Eric M. Ludlam
2009-10-04 1:44 ` Chong Yidong
2009-10-04 2:30 ` Eric M. Ludlam
2009-10-04 5:52 ` Chong Yidong
2009-10-01 3:58 ` Miles Bader
2009-10-01 11:31 ` Eric M. Ludlam
2009-10-01 14:48 ` Chong Yidong
2009-10-07 3:43 ` Phil Hagelberg
2009-10-07 5:37 ` Chong Yidong
2009-10-07 16:20 ` Eric M. Ludlam
-- strict thread matches above, loose matches on Subject: below --
2012-09-16 1:55 Feature freeze on October 1 Chong Yidong
2012-09-16 15:30 ` David Engster
2012-09-16 19:04 ` Stefan Monnier
2012-09-26 20:24 ` CEDET merge (was: Feature freeze on October 1) David Engster
2012-09-30 13:55 ` CEDET merge David Engster
2012-09-30 14:10 ` David Engster
2012-09-30 18:58 ` Glenn Morris
2012-09-30 19:17 ` Paul Eggert
2012-10-01 0:16 ` Glenn Morris
2012-10-01 3:44 ` Chong Yidong
2012-10-01 11:44 ` Eric M. Ludlam
2012-10-01 15:17 ` David Engster
2012-10-01 17:48 ` Chong Yidong
2012-10-01 17:56 ` Chong Yidong
2012-10-02 15:24 ` Chong Yidong
2012-10-04 19:32 ` David Engster
2012-10-06 11:19 ` Chong Yidong
2012-10-06 11:30 ` David Engster
2012-10-06 14:24 ` Chong Yidong
2012-10-06 14:54 ` Stefan Monnier
2012-10-06 17:29 ` David Engster
2012-10-06 18:10 ` Stefan Monnier
2012-10-07 11:19 ` David Engster
2012-10-06 23:31 ` Glenn Morris
2012-10-07 1:15 ` Glenn Morris
2012-10-07 11:03 ` David Engster
2012-10-27 14:40 ` David Engster
2012-10-28 18:50 ` Glenn Morris
2012-11-17 3:23 ` Glenn Morris
2012-11-18 15:42 ` David Engster
2012-11-20 2:45 ` Glenn Morris
2012-11-21 13:09 ` Chong Yidong
2012-10-07 20:50 ` David Engster
2012-11-08 12:32 ` Alex Ott
2012-10-02 2:44 Dmitry Gutov
2012-10-02 5:05 ` Chong Yidong
2012-10-02 5:56 ` David Engster
2017-01-12 19:32 CEDET Merge Edward John Steere
2017-01-12 19:45 ` Eli Zaretskii
2017-01-12 20:27 ` Edward John Steere
2017-01-12 20:10 ` Bastian Beischer
2017-01-12 20:40 ` Edward John Steere
2017-01-16 18:45 ` Edward John Steere
2017-01-16 19:30 ` Eli Zaretskii
2017-01-16 19:55 ` Edward John Steere
2017-01-16 20:06 ` Eli Zaretskii
2017-01-16 20:12 ` Edward John Steere
2017-01-17 15:59 ` Eli Zaretskii
2017-01-17 16:10 ` Edward John Steere
2017-01-17 16:36 ` Stephen Leake
2017-01-17 20:36 ` Edward John Steere
2017-01-17 21:22 ` Stephen Leake
2017-01-17 21:23 ` David Engster
2017-01-18 10:12 ` Edward Steere
2017-01-18 22:05 ` David Engster
2017-01-19 18:01 ` Edward John Steere
2017-01-19 21:57 ` David Engster
2017-01-19 22:29 ` Karl Fogel
2017-01-20 22:20 ` David Engster
2017-01-20 22:40 ` Stefan Monnier
2017-01-20 22:57 ` David Engster
2017-01-21 0:08 ` Stefan Monnier
2017-01-21 12:02 ` Eli Zaretskii
2017-01-21 18:29 ` Glenn Morris
2017-01-21 18:37 ` Eli Zaretskii
2017-01-21 18:52 ` Glenn Morris
2017-01-21 19:50 ` Eli Zaretskii
2017-01-21 22:57 ` Paul Eggert
2017-01-22 16:08 ` Eli Zaretskii
2017-01-22 22:00 ` David Engster
2017-01-23 1:37 ` Paul Eggert
2017-01-22 21:31 ` David Engster
2017-01-24 19:02 ` Edward John Steere
2017-01-26 19:54 ` Edward John Steere
2017-01-26 21:06 ` David Engster
2017-01-27 4:38 ` Edward Steere
2017-01-27 20:20 ` Edward John Steere
2017-01-27 21:04 ` David Engster
2017-01-28 9:23 ` Edward John Steere
2017-01-29 21:34 ` David Engster
2017-01-31 16:51 ` Lars Ingebrigtsen
2017-01-31 18:48 ` Ted Zlatanov
2017-01-28 13:45 ` Edward John Steere
2017-01-17 21:10 ` David Engster
2017-01-17 21:25 ` Stephen Leake
2017-01-16 20:26 ` David Engster
2017-01-16 20:37 ` Edward John Steere
2017-01-16 21:13 ` David Engster
2017-01-17 5:21 ` Edward Steere
2017-01-17 21:06 ` David Engster
2017-01-17 21:19 ` Dmitry Gutov
2017-01-17 21:32 ` David Engster
2017-01-18 3:10 ` Lee Hinman
2017-01-18 5:31 ` Edward John Steere
2017-01-18 12:58 ` Stephen Leake
2017-01-18 21:57 ` David Engster
2017-01-19 17:51 ` Edward John Steere
2017-01-19 20:25 ` Lee Hinman
2017-01-29 19:25 ` John Wiegley
2017-01-21 18:06 ` Eric Ludlam
2017-09-23 11:38 ` Charles A. Roelli
2017-09-23 12:55 ` Edward John Steere
2017-09-24 8:24 ` Charles A. Roelli
2017-09-26 18:31 Edward John Steere
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).