Opened 6 years ago
Closed 5 years ago
#110 closed todo (fixed)
Fix `rake update` task to automatically download latest pre-built STC and librun
Reported by: | Jan Vrany | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 8.0.0 |
Component: | default | Keywords: | |
Cc: | Also affects CVS HEAD (eXept version): | no |
Description
As sources of STC and librun are not available, Smalltalk/X build system (aka "rakefiles") downloads prebuilt binaries from SWING CI server.
However, this is done only during checkout so rake update
may result in uncompilable build tree if newer STC and/or librun is required.
Currently, user "has to know" about this and:
- manually delete STC/librun,
- run
rake checkout
, - run
rake update
and - finally run
rake compile
to recompile.
This should be automated so that rake checkout
and rake update
:
- once pre-build STC/librun is downloaded, store downloaded archive SHA256 checksum somewhere,
- when updating pre-built STC/librun, download checksum file first, and compare it with stored checksum
- if chechsums match, do nothing
- if chechsums differ, remove old STC/librun and download most recent one.
Relevant code is in specs/stx-jv.rbspec, see function download_blob_matching()
and package specification for STC and librun below.
Attachments (1)
Change History (5)
comment:1 follow-up: 2 Changed 5 years ago by
comment:2 Changed 5 years ago by
Replying to Bakhtiar Hasmanan:
is there available librun thats isn't dwarf-eh?
I have gcc with sjlj-eh, I wonder if I can to mix it when building st/x or I should use matching gcc?
I'd be safer to use matching GCC, I only test Windows builds using MSYS2 environment as described in Building Smalltalk/X jv-branch from sources.
Now, I think it would work even with sjlj-eh as exceptions are not used withing Smalltalk/X class libraries and only at one or two place within stx:librun
(to handle segmentation violation and FPE. But I did not even try.
Changed 5 years ago by
comment:3 Changed 5 years ago by
Status: | new → testing |
---|
comment:4 Changed 5 years ago by
Resolution: | → fixed |
---|---|
Status: | testing → closed |
The patch works perfectly for the StX 8.0.0. I'm closing the ticket
is there available librun thats isn't dwarf-eh?
I have gcc with sjlj-eh, I wonder if I can to mix it when building st/x or I should use matching gcc?