all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Phillip Lord <phillip.lord@russet.org.uk>
To: "H. Dieter Wilhelm" <dieter@duenenhof-wilhelm.de>
Cc: "Óscar Fuentes" <ofv@wanadoo.es>, emacs-devel@gnu.org
Subject: Re: MinGW Sources, was: Windows Binaries Release
Date: Mon, 08 Nov 2021 22:27:22 +0000	[thread overview]
Message-ID: <87y25yuvud.fsf@russet.org.uk> (raw)
In-Reply-To: <xm46fssbu7vb.fsf@duenenhof-wilhelm.de> (H. Dieter Wilhelm's message of "Thu, 04 Nov 2021 18:51:36 +0100")

"H. Dieter Wilhelm" <dieter@duenenhof-wilhelm.de> writes:

> Óscar Fuentes <ofv@wanadoo.es> writes:
>
>> "H. Dieter Wilhelm" <dieter@duenenhof-wilhelm.de> writes:
>>
>>> in d:/Emacs/emacs-28/admin/nt/dist-build/build-dep-zips.py there is 
>>>
>>>   SRC_REPO="https://sourceforge.net/projects/msys2/files/REPOS/MINGW/Sources".
>>>
>>> But it seems that the Sources folder vanished (for the moment?)!  Do
>>> you, or anybody else, know where else sources of MinGW are?
>>
>> Try
>>
>> https://repo.msys2.org/mingw/sources/
>
> Yes, thank you!
>
> modified   admin/nt/dist-build/build-dep-zips.py
> @@ -121,7 +121,8 @@ def ntldd_munge(out):
>  
>  ## Currently no packages seem to require this!
>  ARCH_PKGS=[]
> -SRC_REPO="https://sourceforge.net/projects/msys2/files/REPOS/MINGW/Sources"
> +## SRC_REPO="https://sourceforge.net/projects/msys2/files/REPOS/MINGW/Sources"
> +SRC_REPO="https://repo.msys2.org/mingw/sources"
>  
>  
>  def immediate_deps(pkg):
> @@ -167,7 +168,7 @@ def download_source(tarball):
>      if not os.path.exists("../emacs-src-cache/{}".format(tarball)):
>          print("Downloading {}...".format(tarball))
>          check_output_maybe(
> -            "wget -a ../download.log -O ../emacs-src-cache/{} {}/{}/download"
> +            "wget -a ../download.log -O ../emacs-src-cache/{} {}/{}"
>              .format(tarball, SRC_REPO, tarball),
>              shell=True
>          )
>

Do you have access to the Emacs git repo? Can you add this?



>> That directory contains tarballs with the exact sources used to build
>> their respective binary packages.
>
> Adjusted build-dep-zips.py and had to install some missing MSYS2
> packages but now the script builds dpendencies.  And the other script
> seems to build Emacs.  But I'm still unsecure about the naming.
> E.g. why are snapshots of Emacs aren't named with the date but just
> "emacs-29.0.50-snapshot"?
>
> ~/
> |- emacs-build/
> |	|- git/
> |	|  |- emacs-$branch ?
> |	|  |- master/ (for snapshots) -> emacs-29.0.50-snapshot
> |	|  |- emacs-$version
> |	|- deps/
> |	|  |- libXpm/
> |	|  |  |- libXpm-noX4.dll (cp from /bin, manually)
> |       |  |- src-emacs (sources from dep py script)  
> |       |  |- src-emacs-cache (from dep py script)  
> |       |  |- x86_64 (DLLs from dep.py script)  
> |	|- build/
> |	|  |- $version
> |	|- install/ (from script)
> |	   |- emacs-29.0.50-snapshot/
> |             |- Emacs' tree
> |- emacs-upload/




Right. When a release happens, we create a new worktree from the
tag. So, we currently have the emacs-28 release branch which will we
eventually worktree to give emacs-28.1.

The problem is that because we are making a build from a completely
unbuilt branch at this point we do a de novo build of everything,
including all the el->elc byte compilation (and some elc->eln for the
preloads). It takes time -- about 4-5 hours for a 64 and 32 bit build
(IIRC, we have ditched the i686 build now, but still).

That's fine for a release. But for snapshots, it a lot. So we might want
to build snapshots from the emacs-28 or master branch. For snapshots,
the risk of an non-clean, incremental build is perfectly justified, so
we do not make a new branch. As the elc files go into the source tree
(even for an "out-of-source" build) they will still be there; again,
IIRC, the scripts do not delete the "build" directory so even the C is
build incrementally; we do need to delete the install directory, because
building the zip file with dependencies, including the installer
version, alters the install tree, so make that clean every time -- not a
biggie as it's just a copy and takes very little time.

All of this, of course, is dependent on building shapshots. I did that
well for a while, but over the recent past, it has happened very, very
rarely. Be a different matter, perhaps, if it were fully automated, but
I never quite got there. Snapshots are not essential, though, and I have
no idea how many people were actually using them.

Cheers

Phil



  reply	other threads:[~2021-11-08 22:27 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-30 18:30 The emacs-28 release branch has been created Eli Zaretskii
2021-10-02 15:58 ` Windows Binaries Release: was The emacs-28 release branch Phillip Lord
2021-10-03 10:53   ` Po Lu
2021-10-04 19:04     ` Phillip Lord
2021-10-16 20:24       ` Konstantin Kharlamov
2021-10-17  0:43         ` Po Lu
2021-10-17 13:45           ` Konstantin Kharlamov
2021-10-20 15:26         ` Phillip Lord
2021-10-03 11:22   ` Corwin Brust
2021-10-04 19:05     ` Phillip Lord
2021-10-16 10:03       ` H. Dieter Wilhelm
2021-10-16 13:31         ` Corwin Brust
2021-10-16 16:01           ` H. Dieter Wilhelm
2021-10-20 15:24             ` Phillip Lord
2021-10-20 18:36               ` H. Dieter Wilhelm
2021-10-27 19:36               ` H. Dieter Wilhelm
2021-10-27 21:07                 ` Phillip Lord
2021-11-01 20:47                   ` H. Dieter Wilhelm
2021-11-01 21:06                     ` Óscar Fuentes
2021-11-02 11:16                       ` Eshell requires execute permission on Win10, was " H. Dieter Wilhelm
2021-11-02 14:37                         ` Óscar Fuentes
2021-11-02 18:57                           ` MinGW Sources, was: Windows Binaries Release H. Dieter Wilhelm
2021-11-02 19:07                             ` Óscar Fuentes
2021-11-04 17:51                               ` H. Dieter Wilhelm
2021-11-08 22:27                                 ` Phillip Lord [this message]
2021-11-09 12:25                                   ` Eli Zaretskii
2021-11-09 14:32                                     ` Phillip Lord
2021-11-02 10:47                     ` Windows Binaries Release: was The emacs-28 release branch Phillip Lord
2021-11-02 12:05                       ` H. Dieter Wilhelm
2021-10-20 15:16           ` Phillip Lord
2021-10-21  0:13             ` Corwin Brust
2021-10-27 21:11               ` Phillip Lord
2021-10-03  1:35 ` The emacs-28 release branch has been created Ken Brown
2021-10-03  6:53   ` Andreas Schwab
2021-10-03  9:27   ` Eli Zaretskii
2021-10-03 15:01     ` Ken Brown
2021-10-03 15:17       ` Eli Zaretskii
2021-10-03 15:34         ` Ken Brown
2021-10-03 16:11           ` Eli Zaretskii
2021-10-03 17:14             ` Ken Brown
2021-10-03 17:33               ` Eli Zaretskii
2021-10-03 17:49                 ` Eli Zaretskii
2021-10-03 17:56                 ` Ken Brown
2021-10-03 18:03                   ` Eli Zaretskii
2021-10-03 19:20                   ` Eli Zaretskii
2021-10-03 19:42                     ` Eli Zaretskii
2021-10-03 19:45                     ` Ken Brown
2021-10-03 21:21                       ` Ken Brown
2021-10-03 22:40                         ` Ken Brown
2021-10-04 18:51                           ` Eli Zaretskii
2021-10-04 13:31                         ` Ken Brown
2021-10-04 14:25                           ` Eli Zaretskii
2021-10-04 14:39                             ` Eli Zaretskii
2021-10-04 14:45                               ` Andrea Corallo via Emacs development discussions.
2021-10-04 14:54                                 ` Eli Zaretskii
2021-10-04 15:13                                   ` Andrea Corallo via Emacs development discussions.
2021-10-04 16:15                                   ` Andrea Corallo via Emacs development discussions.
2021-10-04 16:58                                     ` Eli Zaretskii
2021-10-04 19:38                                       ` Andrea Corallo via Emacs development discussions.
2021-10-04 19:40                                         ` Andrea Corallo via Emacs development discussions.
2021-10-04 19:54                                           ` Eli Zaretskii
2021-10-04 21:58                                           ` Ken Brown
2021-10-05 11:43                                         ` Eli Zaretskii
2021-10-05 15:43                                           ` Andrea Corallo via Emacs development discussions.
2021-10-05 11:29                                     ` Eli Zaretskii
2021-10-05 15:37                                       ` Andrea Corallo via Emacs development discussions.
2021-10-05 16:14                                         ` Eli Zaretskii
2021-10-05 16:52                                           ` Andrea Corallo via Emacs development discussions.
2021-10-05 17:12                                             ` Eli Zaretskii
2021-10-04 11:37                       ` Eli Zaretskii
2021-10-04 13:11                         ` Ken Brown
2021-10-04 13:34                           ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y25yuvud.fsf@russet.org.uk \
    --to=phillip.lord@russet.org.uk \
    --cc=dieter@duenenhof-wilhelm.de \
    --cc=emacs-devel@gnu.org \
    --cc=ofv@wanadoo.es \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.