unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Building Emacs from CVS on windows nt failed
@ 2004-10-17 13:42 Lennart Borgman
  2004-10-17 16:17 ` Jason Rumney
  2004-10-17 18:11 ` Lennart Borgman
  0 siblings, 2 replies; 5+ messages in thread
From: Lennart Borgman @ 2004-10-17 13:42 UTC (permalink / raw)


I took some time to download the CVS version and started building it. It
fails in make boostrap with the following:

Wrote c:/emacscvs/emacs/lisp/finder-inf.el
touch cus-load.el
Can't touch cus-load.el - No such file or directory
make[1]: *** [cus-load.el] Error 1
make[1]: Leaving directory `/c/emacscvs/emacs/lisp'
make: *** [bootstrap-gmake] Error 2

I guess it is not very important in this case (cus-load.el seems to be
missing, can't find it in WebCVS either), but I am using current MinGW and
MSYS.

I have however another point about this. When things fail on ms windows you
immediately starting wondering whether the build process for ms windows is
updated or not. I am very far from beeing a compiler expert and posix
expert, but I wonder if it would not be better merge the building processes
so that windows nt was built the same way as the unix or GNU/Linux builds? I
have got the impression that several people would like something like that
to happen.

I wonder if MSYS is enough for that? Is the make that comes with MSYS GNU
make? Is the MSYS shell good enough? Are the any problems with building with
MSVC? Maybe the NMakeFile is built by the MSVC?

I can understand that a separate build process for ms windows was once
created. My question is whether it is still useful or something that takes
extra time for many people.

- Lennart

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Building Emacs from CVS on windows nt failed
  2004-10-17 13:42 Building Emacs from CVS on windows nt failed Lennart Borgman
@ 2004-10-17 16:17 ` Jason Rumney
  2004-10-17 18:11 ` Lennart Borgman
  1 sibling, 0 replies; 5+ messages in thread
From: Jason Rumney @ 2004-10-17 16:17 UTC (permalink / raw)
  Cc: Emacs Devel

"Lennart Borgman" <lennart.borgman.073@student.lu.se> writes:

> I can understand that a separate build process for ms windows was once
> created. My question is whether it is still useful or something that takes
> extra time for many people.

The makefiles do not get updated very often, and it is not much effort
to sync the Windows makefiles when they do. Rewriting the build system
to work with MSys instead would take a lot of effort, which I don't
think anyone has the time for right now. I don't object if someone
wants to do it (though not until after 21.4), but I don't think it is
worth spending time on myself.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Building Emacs from CVS on windows nt failed
  2004-10-17 13:42 Building Emacs from CVS on windows nt failed Lennart Borgman
  2004-10-17 16:17 ` Jason Rumney
@ 2004-10-17 18:11 ` Lennart Borgman
  2004-10-17 18:49   ` Lennart Borgman
  2004-10-17 18:49   ` Stefan Monnier
  1 sibling, 2 replies; 5+ messages in thread
From: Lennart Borgman @ 2004-10-17 18:11 UTC (permalink / raw)


----- Original Message ----- 
From: "Lennart Borgman" <lennart.borgman.073@student.lu.se>
To: "Emacs Devel" <emacs-devel@gnu.org>
Sent: Sunday, October 17, 2004 3:42 PM
Subject: Building Emacs from CVS on windows nt failed


: I took some time to download the CVS version and started building it. It
: fails in make boostrap with the following:
:
: Wrote c:/emacscvs/emacs/lisp/finder-inf.el
: touch cus-load.el
: Can't touch cus-load.el - No such file or directory
: make[1]: *** [cus-load.el] Error 1
: make[1]: Leaving directory `/c/emacscvs/emacs/lisp'
: make: *** [bootstrap-gmake] Error 2


Jason Rumney pointed out that cus-load.el is an autogenerated file (which I
saw too late). I can't really understand the makerules for this:

    doit:

    cus-load.el:
          touch $@

    custom-deps: cus-load.el doit
         @echo Directories: $(WINS)
        -$(emacs) -l cus-dep --eval $(ARGQUOTE)(setq find-file-hooks
nil)$(ARGQUOTE) -f custom-make-dependencies $(lisp) $(WINS)

Why do custom-deps have "prerequisites"? Could not these just be removed?
(May the "touch $@" should be replaced with a command "touch cus-load.el" at
the bottom - if it is needed?)

Does the prerequisites have something to do with different make programs?

Does not this always fail the first time, before cus-load.el exists? (I have
read that many people say that make bootstrap often fails, it that problem
connected with this?)


- Lennart

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Building Emacs from CVS on windows nt failed
  2004-10-17 18:11 ` Lennart Borgman
@ 2004-10-17 18:49   ` Lennart Borgman
  2004-10-17 18:49   ` Stefan Monnier
  1 sibling, 0 replies; 5+ messages in thread
From: Lennart Borgman @ 2004-10-17 18:49 UTC (permalink / raw)


: ----- Original Message ----- 
: From: "Lennart Borgman" <lennart.borgman.073@student.lu.se>
: To: "Emacs Devel" <emacs-devel@gnu.org>
: Sent: Sunday, October 17, 2004 3:42 PM
: Subject: Building Emacs from CVS on windows nt failed
:
:
: : I took some time to download the CVS version and started building it. It
: : fails in make boostrap with the following:
: :
: : Wrote c:/emacscvs/emacs/lisp/finder-inf.el
: : touch cus-load.el
: : Can't touch cus-load.el - No such file or directory
: : make[1]: *** [cus-load.el] Error 1
: : make[1]: Leaving directory `/c/emacscvs/emacs/lisp'
: : make: *** [bootstrap-gmake] Error 2
:
:
: Jason Rumney pointed out that cus-load.el is an autogenerated file (which
I
: saw too late). I can't really understand the makerules for this:
:
:     doit:
:
:     cus-load.el:
:           touch $@
:
:     custom-deps: cus-load.el doit
:          @echo Directories: $(WINS)
:         -$(emacs) -l cus-dep --eval $(ARGQUOTE)(setq find-file-hooks
: nil)$(ARGQUOTE) -f custom-make-dependencies $(lisp) $(WINS)
:
: Why do custom-deps have "prerequisites"? Could not these just be removed?
: (May the "touch $@" should be replaced with a command "touch cus-load.el"
at
: the bottom - if it is needed?)
:
: Does the prerequisites have something to do with different make programs?
:
: Does not this always fail the first time, before cus-load.el exists? (I
have
: read that many people say that make bootstrap often fails, it that problem
: connected with this?)

I must answer myself again before someone else worries about this. I still
do not understand the make rule (but that is not a big matter, I am not used
to make), but I have found the cause of my troubles. There was another
version of touch.exe in my path (from NT reskit maybe) that failed when
there was no file. That is not posix compliant I guess. The MSYS version
does not fail.

Sorry for disturbing with this.

- Lennart

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Building Emacs from CVS on windows nt failed
  2004-10-17 18:11 ` Lennart Borgman
  2004-10-17 18:49   ` Lennart Borgman
@ 2004-10-17 18:49   ` Stefan Monnier
  1 sibling, 0 replies; 5+ messages in thread
From: Stefan Monnier @ 2004-10-17 18:49 UTC (permalink / raw)
  Cc: Emacs Devel

>     doit:

>     cus-load.el:
>           touch $@

>     custom-deps: cus-load.el doit
>          @echo Directories: $(WINS)
>         -$(emacs) -l cus-dep --eval $(ARGQUOTE)(setq find-file-hooks
> nil)$(ARGQUOTE) -f custom-make-dependencies $(lisp) $(WINS)

`doit' is there to make sure that `make custom-deps' is never considered as
"built".  Admittedly, since the file `custom-deps' doesn't exist any more than
the file `doit', it's not very useful in this case, but it's a more
generic pattern.

IIRC the elisp function `custom-make-dependencies' fails if cus-load.el does
not exist yet.  That's why there is a `cus-load.el' rule which does nothing
more than ensure that the file exists (if it already exists, then the
`cus-load.el' rule is not executed since there is no dependency).

> Does not this always fail the first time, before cus-load.el exists?

It's always worked for me.  Your `touch' program seems odd in that it seems
to refuse to create a file, even though `touch' is often used exactly for
this purpose.


        Stefan

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2004-10-17 18:49 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-10-17 13:42 Building Emacs from CVS on windows nt failed Lennart Borgman
2004-10-17 16:17 ` Jason Rumney
2004-10-17 18:11 ` Lennart Borgman
2004-10-17 18:49   ` Lennart Borgman
2004-10-17 18:49   ` Stefan Monnier

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).