* ede cedet does not compile .elc
@ 2014-02-08 13:47 Pierre Lorenzon
2014-02-09 7:52 ` Pierre Lorenzon
0 siblings, 1 reply; 4+ messages in thread
From: Pierre Lorenzon @ 2014-02-08 13:47 UTC (permalink / raw)
To: help-gnu-emacs
Hi all,
I migrated from emacs 24.0 to 24.3.1 and now used the cedet
embedded in emacs.
I must say that bugs that I encountered in 24.2 version have
been fixed and that I am really happy of that ! Even if one can
always use the last cedet version from cvs or git or whatever I
prefer use that embedded in emacs.
But now I encounter following problem :
A verry simple project like that :
;; Object Ede Test
;; EDE Project Files are auto generated: Do Not Edit
(ede-proj-project "Ede Test"
:file "Project.ede"
:name "Ede Test"
:targets (list
(ede-proj-target-elisp "hello.elc"
:name "hello.elc"
:path ""
:source '("hello.el")
)
)
:automatic-dependencies 'nil
)
Where hello.el is the simplest lisp code that you can imagine :
(message "Hello world")
Produce following Makefile (that looks strange to me since
there actually seems to be something circular :)
# Automatically Generated Makefile by EDE.
# For use with: make
#
# DO NOT MODIFY THIS FILE OR YOUR CHANGES MAY BE LOST.
# EDE is the Emacs Development Environment.
# http://cedet.sourceforge.net/ede.shtml
#
top="$(CURDIR)"/
ede_FILES=Project.ede Makefile
hello_elc_LISP=hello.el
EMACS=emacs
EMACSFLAGS=-batch --no-site-file --eval '(setq debug-on-error t)'
require=$(foreach r,$(1),(require (quote $(r))))
VERSION=1.0
DISTDIR=$(top)Ede Test-$(VERSION)
all: hello.elc
%.elc: %.el
$(EMACS) $(EMACSFLAGS) $(addprefix -L ,$(LOADPATH)) --eval '(progn $(call require, $(PRELOADS)))' -f batch-byte-compile $^
.PHONY: hello.elc
hello.elc: $(addsuffix c, $(hello_elc_LISP))
tags:
clean:
rm -f *.elc
.PHONY: dist
dist:
rm -rf $(DISTDIR)
mkdir $(DISTDIR)
cp $(hello_elc_LISP) $(ede_FILES) $(DISTDIR)
tar -cvzf $(DISTDIR).tar.gz $(DISTDIR)
rm -rf $(DISTDIR)
Makefile: Project.ede
@echo Makefile is out of date! It needs to be regenerated by EDE.
@echo If you have not modified Project.ede, you can use 'touch' to update the Makefile time stamp.
@false
# End of Makefile
But the output of the compilation confirms that there's
something wrong :
-*- mode: compilation; default-directory: "~/codes/elisp/ede/" -*-
Compilation started at Sat Feb 8 11:49:49
make -f /home/devel/codes/elisp/ede/Makefile all
make: Circular hello.elc <- hello.elc dependency dropped.
make: Nothing to be done for `all'.
Compilation finished at Sat Feb 8 11:49:49
Did I something wrong in my use of ede ? In fact all my old
projects that compiled do not longer !
Regards
Pierre
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: ede cedet does not compile .elc
2014-02-08 13:47 ede cedet does not compile .elc Pierre Lorenzon
@ 2014-02-09 7:52 ` Pierre Lorenzon
2014-02-14 1:24 ` Eric M. Ludlam
0 siblings, 1 reply; 4+ messages in thread
From: Pierre Lorenzon @ 2014-02-09 7:52 UTC (permalink / raw)
To: help-gnu-emacs, cedet-devel
Hi,
When changing Make project to Automake it works. But it
produces a much more complicated Makefile that is not
necessarily useful for simple lisp projects.
When manually removing the phony target from the Makefile
produced by the Make type project it works as well. Maybe is my
knowledge of Makefile not sufficient to understand why there is
this phony target but anyway I suspect that it can safely be
removed ! In previous versions there was only the phony target
and not the implicit rule %.elc: %.el. Are these two thing not
compitible for any reason that I do not really understand ?
Maybe I should say that make is 3.82.
Regards
Pierre
From: Pierre Lorenzon <devel@pollock-nageoire.net>
Subject: ede cedet does not compile .elc
Date: Sat, 08 Feb 2014 14:47:53 +0100 (CET)
>
> Hi all,
>
> I migrated from emacs 24.0 to 24.3.1 and now used the cedet
> embedded in emacs.
>
> I must say that bugs that I encountered in 24.2 version have
> been fixed and that I am really happy of that ! Even if one can
> always use the last cedet version from cvs or git or whatever I
> prefer use that embedded in emacs.
>
> But now I encounter following problem :
>
> A verry simple project like that :
>
> ;; Object Ede Test
> ;; EDE Project Files are auto generated: Do Not Edit
> (ede-proj-project "Ede Test"
> :file "Project.ede"
> :name "Ede Test"
> :targets (list
> (ede-proj-target-elisp "hello.elc"
> :name "hello.elc"
> :path ""
> :source '("hello.el")
> )
> )
> :automatic-dependencies 'nil
> )
>
> Where hello.el is the simplest lisp code that you can imagine :
>
> (message "Hello world")
>
> Produce following Makefile (that looks strange to me since
> there actually seems to be something circular :)
>
> # Automatically Generated Makefile by EDE.
> # For use with: make
> #
> # DO NOT MODIFY THIS FILE OR YOUR CHANGES MAY BE LOST.
> # EDE is the Emacs Development Environment.
> # http://cedet.sourceforge.net/ede.shtml
> #
>
> top="$(CURDIR)"/
> ede_FILES=Project.ede Makefile
>
> hello_elc_LISP=hello.el
> EMACS=emacs
> EMACSFLAGS=-batch --no-site-file --eval '(setq debug-on-error t)'
> require=$(foreach r,$(1),(require (quote $(r))))
> VERSION=1.0
> DISTDIR=$(top)Ede Test-$(VERSION)
>
>
>
> all: hello.elc
>
> %.elc: %.el
> $(EMACS) $(EMACSFLAGS) $(addprefix -L ,$(LOADPATH)) --eval '(progn $(call require, $(PRELOADS)))' -f batch-byte-compile $^
>
> .PHONY: hello.elc
> hello.elc: $(addsuffix c, $(hello_elc_LISP))
>
> tags:
>
>
> clean:
> rm -f *.elc
>
> .PHONY: dist
>
> dist:
> rm -rf $(DISTDIR)
> mkdir $(DISTDIR)
> cp $(hello_elc_LISP) $(ede_FILES) $(DISTDIR)
> tar -cvzf $(DISTDIR).tar.gz $(DISTDIR)
> rm -rf $(DISTDIR)
>
> Makefile: Project.ede
> @echo Makefile is out of date! It needs to be regenerated by EDE.
> @echo If you have not modified Project.ede, you can use 'touch' to update the Makefile time stamp.
> @false
>
>
>
> # End of Makefile
>
> But the output of the compilation confirms that there's
> something wrong :
>
> -*- mode: compilation; default-directory: "~/codes/elisp/ede/" -*-
> Compilation started at Sat Feb 8 11:49:49
>
> make -f /home/devel/codes/elisp/ede/Makefile all
> make: Circular hello.elc <- hello.elc dependency dropped.
> make: Nothing to be done for `all'.
>
> Compilation finished at Sat Feb 8 11:49:49
>
>
> Did I something wrong in my use of ede ? In fact all my old
> projects that compiled do not longer !
>
> Regards
>
> Pierre
>
------------------------------------------------------------------------------
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: ede cedet does not compile .elc
2014-02-09 7:52 ` Pierre Lorenzon
@ 2014-02-14 1:24 ` Eric M. Ludlam
2014-02-14 4:34 ` Pierre Lorenzon
0 siblings, 1 reply; 4+ messages in thread
From: Eric M. Ludlam @ 2014-02-14 1:24 UTC (permalink / raw)
To: Pierre Lorenzon; +Cc: help-gnu-emacs, cedet-devel
Hi Pierre,
Sorry for a late reply.
I believe the problem you are having is that you named your target
"hello.elc".
In the test suite I use to test this make style, the target that holds
the lisp code is named "Lisp". It then makes a rule like this:
.PHONY: Lisp
Lisp: $(addsuffix c, $(Lisp_LISP))
With your name of hello.elc, it tells make that "hello.elc" depends on
"hello.elc". I'm sure that will confuse the system.
I recommend naming your Emacs Lisp targets something that excludes any
".el" or ".elc" extension.
I suppose EDE could try to identify this problem, and strip any suffix
off the target name.
Good Luck
Eric
On 02/09/2014 02:52 AM, Pierre Lorenzon wrote:
>
> Hi,
>
> When changing Make project to Automake it works. But it
> produces a much more complicated Makefile that is not
> necessarily useful for simple lisp projects.
>
>
> When manually removing the phony target from the Makefile
> produced by the Make type project it works as well. Maybe is my
> knowledge of Makefile not sufficient to understand why there is
> this phony target but anyway I suspect that it can safely be
> removed ! In previous versions there was only the phony target
> and not the implicit rule %.elc: %.el. Are these two thing not
> compitible for any reason that I do not really understand ?
>
> Maybe I should say that make is 3.82.
>
> Regards
>
> Pierre
>
>
>
> From: Pierre Lorenzon<devel@pollock-nageoire.net>
> Subject: ede cedet does not compile .elc
> Date: Sat, 08 Feb 2014 14:47:53 +0100 (CET)
>
>>
>> Hi all,
>>
>> I migrated from emacs 24.0 to 24.3.1 and now used the cedet
>> embedded in emacs.
>>
>> I must say that bugs that I encountered in 24.2 version have
>> been fixed and that I am really happy of that ! Even if one can
>> always use the last cedet version from cvs or git or whatever I
>> prefer use that embedded in emacs.
>>
>> But now I encounter following problem :
>>
>> A verry simple project like that :
>>
>> ;; Object Ede Test
>> ;; EDE Project Files are auto generated: Do Not Edit
>> (ede-proj-project "Ede Test"
>> :file "Project.ede"
>> :name "Ede Test"
>> :targets (list
>> (ede-proj-target-elisp "hello.elc"
>> :name "hello.elc"
>> :path ""
>> :source '("hello.el")
>> )
>> )
>> :automatic-dependencies 'nil
>> )
>>
>> Where hello.el is the simplest lisp code that you can imagine :
>>
>> (message "Hello world")
>>
>> Produce following Makefile (that looks strange to me since
>> there actually seems to be something circular :)
>>
>> # Automatically Generated Makefile by EDE.
>> # For use with: make
>> #
>> # DO NOT MODIFY THIS FILE OR YOUR CHANGES MAY BE LOST.
>> # EDE is the Emacs Development Environment.
>> # http://cedet.sourceforge.net/ede.shtml
>> #
>>
>> top="$(CURDIR)"/
>> ede_FILES=Project.ede Makefile
>>
>> hello_elc_LISP=hello.el
>> EMACS=emacs
>> EMACSFLAGS=-batch --no-site-file --eval '(setq debug-on-error t)'
>> require=$(foreach r,$(1),(require (quote $(r))))
>> VERSION=1.0
>> DISTDIR=$(top)Ede Test-$(VERSION)
>>
>>
>>
>> all: hello.elc
>>
>> %.elc: %.el
>> $(EMACS) $(EMACSFLAGS) $(addprefix -L ,$(LOADPATH)) --eval '(progn $(call require, $(PRELOADS)))' -f batch-byte-compile $^
>>
>> .PHONY: hello.elc
>> hello.elc: $(addsuffix c, $(hello_elc_LISP))
>>
>> tags:
>>
>>
>> clean:
>> rm -f *.elc
>>
>> .PHONY: dist
>>
>> dist:
>> rm -rf $(DISTDIR)
>> mkdir $(DISTDIR)
>> cp $(hello_elc_LISP) $(ede_FILES) $(DISTDIR)
>> tar -cvzf $(DISTDIR).tar.gz $(DISTDIR)
>> rm -rf $(DISTDIR)
>>
>> Makefile: Project.ede
>> @echo Makefile is out of date! It needs to be regenerated by EDE.
>> @echo If you have not modified Project.ede, you can use 'touch' to update the Makefile time stamp.
>> @false
>>
>>
>>
>> # End of Makefile
>>
>> But the output of the compilation confirms that there's
>> something wrong :
>>
>> -*- mode: compilation; default-directory: "~/codes/elisp/ede/" -*-
>> Compilation started at Sat Feb 8 11:49:49
>>
>> make -f /home/devel/codes/elisp/ede/Makefile all
>> make: Circular hello.elc<- hello.elc dependency dropped.
>> make: Nothing to be done for `all'.
>>
>> Compilation finished at Sat Feb 8 11:49:49
>>
>>
>> Did I something wrong in my use of ede ? In fact all my old
>> projects that compiled do not longer !
>>
>> Regards
>>
>> Pierre
>>
>
> ------------------------------------------------------------------------------
> Managing the Performance of Cloud-Based Applications
> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
> Read the Whitepaper.
> http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
> _______________________________________________
> Cedet-devel mailing list
> Cedet-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/cedet-devel
>
------------------------------------------------------------------------------
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience. Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: ede cedet does not compile .elc
2014-02-14 1:24 ` Eric M. Ludlam
@ 2014-02-14 4:34 ` Pierre Lorenzon
0 siblings, 0 replies; 4+ messages in thread
From: Pierre Lorenzon @ 2014-02-14 4:34 UTC (permalink / raw)
To: eric; +Cc: help-gnu-emacs, cedet-devel
Hi Eric,
Thanks for your answer.
From: "Eric M. Ludlam" <eric@siege-engine.com>
Subject: Re: [CEDET-devel] ede cedet does not compile .elc
Date: Thu, 13 Feb 2014 20:24:13 -0500
> Hi Pierre,
>
> Sorry for a late reply.
>
> I believe the problem you are having is that you named your
> target "hello.elc".
In fact it can be an aspect of the problem. But in the past I
always did so and everything went well. Hence most of my
project are written following this scope. Something changed
actualy in ede since I saw that makefiles that are now
produced from the same projecte.ede file are no longer the
same.
Anyway I can change target naming in my projects.
>
> In the test suite I use to test this make style, the target
> that holds the lisp code is named "Lisp". It then makes a rule
> like this:
>
> .PHONY: Lisp
> Lisp: $(addsuffix c, $(Lisp_LISP))
OK
>
> With your name of hello.elc, it tells make that "hello.elc"
> depends on "hello.elc". I'm sure that will confuse the system.
I am sure as well : indeed it confused it !
>
> I recommend naming your Emacs Lisp targets something that
> excludes any ".el" or ".elc" extension.
Clear now ! I'll do that !
Thanks Again
Pierre
>
> I suppose EDE could try to identify this problem, and strip any
> suffix off the target name.
>
> Good Luck
> Eric
>
> On 02/09/2014 02:52 AM, Pierre Lorenzon wrote:
>>
>> Hi,
>>
>> When changing Make project to Automake it works. But it
>> produces a much more complicated Makefile that is not
>> necessarily useful for simple lisp projects.
>>
>>
>> When manually removing the phony target from the Makefile
>> produced by the Make type project it works as well. Maybe is my
>> knowledge of Makefile not sufficient to understand why there is
>> this phony target but anyway I suspect that it can safely be
>> removed ! In previous versions there was only the phony target
>> and not the implicit rule %.elc: %.el. Are these two thing not
>> compitible for any reason that I do not really understand ?
>>
>> Maybe I should say that make is 3.82.
>>
>> Regards
>>
>> Pierre
>>
>>
>>
>> From: Pierre Lorenzon<devel@pollock-nageoire.net>
>> Subject: ede cedet does not compile .elc
>> Date: Sat, 08 Feb 2014 14:47:53 +0100 (CET)
>>
>>>
>>> Hi all,
>>>
>>> I migrated from emacs 24.0 to 24.3.1 and now used the cedet
>>> embedded in emacs.
>>>
>>> I must say that bugs that I encountered in 24.2 version have
>>> been fixed and that I am really happy of that ! Even if one can
>>> always use the last cedet version from cvs or git or whatever I
>>> prefer use that embedded in emacs.
>>>
>>> But now I encounter following problem :
>>>
>>> A verry simple project like that :
>>>
>>> ;; Object Ede Test
>>> ;; EDE Project Files are auto generated: Do Not Edit
>>> (ede-proj-project "Ede Test"
>>> :file "Project.ede"
>>> :name "Ede Test"
>>> :targets (list
>>> (ede-proj-target-elisp "hello.elc"
>>> :name "hello.elc"
>>> :path ""
>>> :source '("hello.el")
>>> )
>>> )
>>> :automatic-dependencies 'nil
>>> )
>>>
>>> Where hello.el is the simplest lisp code that you can imagine :
>>>
>>> (message "Hello world")
>>>
>>> Produce following Makefile (that looks strange to me since
>>> there actually seems to be something circular :)
>>>
>>> # Automatically Generated Makefile by EDE.
>>> # For use with: make
>>> #
>>> # DO NOT MODIFY THIS FILE OR YOUR CHANGES MAY BE LOST.
>>> # EDE is the Emacs Development Environment.
>>> # http://cedet.sourceforge.net/ede.shtml
>>> #
>>>
>>> top="$(CURDIR)"/
>>> ede_FILES=Project.ede Makefile
>>>
>>> hello_elc_LISP=hello.el
>>> EMACS=emacs
>>> EMACSFLAGS=-batch --no-site-file --eval '(setq debug-on-error
>>> t)'
>>> require=$(foreach r,$(1),(require (quote $(r))))
>>> VERSION=1.0
>>> DISTDIR=$(top)Ede Test-$(VERSION)
>>>
>>>
>>>
>>> all: hello.elc
>>>
>>> %.elc: %.el
>>> $(EMACS) $(EMACSFLAGS) $(addprefix -L ,$(LOADPATH)) --eval '(progn
>>> $(call require, $(PRELOADS)))' -f batch-byte-compile $^
>>>
>>> .PHONY: hello.elc
>>> hello.elc: $(addsuffix c, $(hello_elc_LISP))
>>>
>>> tags:
>>>
>>>
>>> clean:
>>> rm -f *.elc
>>>
>>> .PHONY: dist
>>>
>>> dist:
>>> rm -rf $(DISTDIR)
>>> mkdir $(DISTDIR)
>>> cp $(hello_elc_LISP) $(ede_FILES) $(DISTDIR)
>>> tar -cvzf $(DISTDIR).tar.gz $(DISTDIR)
>>> rm -rf $(DISTDIR)
>>>
>>> Makefile: Project.ede
>>> @echo Makefile is out of date! It needs to be regenerated by EDE.
>>> @echo If you have not modified Project.ede, you can use 'touch' to
>>> update the Makefile time stamp.
>>> @false
>>>
>>>
>>>
>>> # End of Makefile
>>>
>>> But the output of the compilation confirms that there's
>>> something wrong :
>>>
>>> -*- mode: compilation; default-directory: "~/codes/elisp/ede/" -*-
>>> Compilation started at Sat Feb 8 11:49:49
>>>
>>> make -f /home/devel/codes/elisp/ede/Makefile all
>>> make: Circular hello.elc<- hello.elc dependency dropped.
>>> make: Nothing to be done for `all'.
>>>
>>> Compilation finished at Sat Feb 8 11:49:49
>>>
>>>
>>> Did I something wrong in my use of ede ? In fact all my old
>>> projects that compiled do not longer !
>>>
>>> Regards
>>>
>>> Pierre
>>>
>>
>>
> ------------------------------------------------------------------------------
>> Managing the Performance of Cloud-Based Applications
>> Take advantage of what the Cloud has to offer - Avoid Common
>> Pitfalls.
>> Read the Whitepaper.
>> http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Cedet-devel mailing list
>> Cedet-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/cedet-devel
>>
------------------------------------------------------------------------------
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience. Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-02-14 4:34 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-08 13:47 ede cedet does not compile .elc Pierre Lorenzon
2014-02-09 7:52 ` Pierre Lorenzon
2014-02-14 1:24 ` Eric M. Ludlam
2014-02-14 4:34 ` Pierre Lorenzon
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).