mason.release.dlls: Copy dlls in the whitelist from the directory that the mason instance runs from to the release directory.

Currently we only copy libressl dlls on Windows, but other targets are the openal dylib on Mac and libressl on other platforms?
locals-and-roots
Doug Coleman 2016-03-29 09:52:12 -07:00
parent d362509d68
commit 5ca7a1403e
3 changed files with 26 additions and 1 deletions

View File

@ -0,0 +1 @@
Doug Coleman

View File

@ -0,0 +1,22 @@
! Copyright (C) 2016 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: io.directories kernel sequences system ;
IN: mason.release.dlls
HOOK: dll-list os ( -- seq )
M: object dll-list { } ;
! These files should be in the directory that mason is run from.
! e.g. c:\factor32 or c:\factor64 on the build machine.
M: windows dll-list
{
"resource:libcrypto-37.dll"
"resource:libssl-38.dll"
"resource:libtls-10.dll"
} ;
: copy-dlls ( -- )
dll-list [
"factor" copy-files-into
] unless-empty ;

View File

@ -1,12 +1,14 @@
! Copyright (C) 2008, 2009 Eduardo Cavazos, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: combinators mason.notify mason.release.archive
mason.release.branch mason.release.tidy mason.release.upload ;
mason.release.branch mason.release.dlls mason.release.tidy
mason.release.upload ;
IN: mason.release
: release ( -- )
update-clean-branch
tidy
copy-dlls
archive-name {
[ make-archive ]
[ upload ]