@ -1832,8 +1832,10 @@ set ::punkboot::bootsupport_optional [dict create {*}{
} ]
} ]
set : : punkboot::bootsupport_recommended [ dict create { * } {
set : : punkboot::bootsupport_recommended [ dict create { * } {
} tcllibc [ list - note { improves performance significantley} ]
} ]
]
# s e t : : p u n k b o o t : : b o o t s u p p o r t _ r e c o m m e n d e d [ d i c t c r e a t e { * } {
# } t c l l i b c [ l i s t - n o t e { i m p r o v e s p e r f o r m a n c e s i g n i f i c a n t l e y } ] { * } {
# } ]
# * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
# * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
# c r e a t e a n i n t e r p i n w h i c h w e h i j a c k p a c k a g e c o m m a n d
# c r e a t e a n i n t e r p i n w h i c h w e h i j a c k p a c k a g e c o m m a n d
@ -2962,7 +2964,7 @@ proc ::punkboot::punkboot_availability_note {} {
append h $broken_out
append h $broken_out
append h " * $ A ( H I G H L I G H T ) * * * * * * * * * * * $ A ( R S T ) " \ n
append h " * $ A ( H I G H L I G H T ) * * * * * * * * * * * $ A ( R S T ) " \ n
append h " T h e s e p a c k a g e s a r e * p r o b a b l y * r e q u i r e d f o r p u n k b o o t t o f u n c t i o n c o r r e c t l y a n d e f f i c i e n t l y " \ n
append h " P a c k a g e s m a r k e d R E C O M M E N D E D a r e * p r o b a b l y * r e q u i r e d f o r p u n k b o o t t o f u n c t i o n e f f i c i e n t l y " \ n
append h " p u n k b o o t m a y s t i l l w o r k i f t h e y a r e a v a i l a b l e e l s e w h e r e f o r t h e r u n n i n g i n t e r p r e t e r " \ n
append h " p u n k b o o t m a y s t i l l w o r k i f t h e y a r e a v a i l a b l e e l s e w h e r e f o r t h e r u n n i n g i n t e r p r e t e r " \ n
append h " R e v i e w t o s e e i f b o o t s u p p o r t s h o u l d b e u p d a t e d " \ n
append h " R e v i e w t o s e e i f b o o t s u p p o r t s h o u l d b e u p d a t e d " \ n
append h " C a l l ' m a k e . t c l c h e c k ' a n d e x a m i n e t h e l a s t t a b l e ( w h i c h i n c l u d e s b o o t s u p p o r t + e x e c u t a b l e - p r o v i d e d p a c k a g e s ) " \ n
append h " C a l l ' m a k e . t c l c h e c k ' a n d e x a m i n e t h e l a s t t a b l e ( w h i c h i n c l u d e s b o o t s u p p o r t + e x e c u t a b l e - p r o v i d e d p a c k a g e s ) " \ n
@ -3412,7 +3414,8 @@ if {[info exists ::env(PUNKBOOT_PLAIN)] && [string is true -strict $::env(PUNKBO
]
]
dict set SUBVALUES bakelist [ list \
dict set SUBVALUES bakelist [ list \
" @ v a l u e s - m i n 0 - m a x - 1 " \
" @ v a l u e s - m i n 0 - m a x - 1 " \
" k i t n a m e - t y p e s t r i n g - o p t i o n a l 1 - m u l t i p l e 1 $ { _ k i t n a m e _ c h o i c e p a r t } - h e l p \
" k i t n a m e - t y p e s t r i n g - o p t i o n a l 1 - m u l t i p l e 1 $ { _ k i t n a m e _ c h o i c e p a r t } \
-help \
{
{
Configured kit output( s ) to report on - a kit name, or @ < groupname>
Configured kit output( s ) to report on - a kit name, or @ < groupname>
for every kit in a configured group ( filters the listing - doubles
for every kit in a configured group ( filters the listing - doubles
@ -3449,18 +3452,19 @@ if {[info exists ::env(PUNKBOOT_PLAIN)] && [string is true -strict $::env(PUNKBO
}
}
punk : : args::define { * } $defparts
punk : : args::define { * } $defparts
}
}
punk : : args::define\
punk : : args::define {
" @ i d - i d ( s c r i p t ) : : p u n k b o o t : : s h e l l " \
@ id - id " ( s c r i p t ) : : p u n k b o o t : : s h e l l "
" @ n o r m a l i z e " \
@ cmd - name " m a k e . t c l s h e l l " - &
" @ c m d - n a m e [ l i s t " m a k e . t c l s h e l l " ] - s u m m a r y [ l i s t [ d i c t g e t $ S U M M A R I E S s h e l l ] ] - h e l p [ l i s t \
-summary " $ { [ d i c t g e t $ S U M M A R I E S s h e l l ] } " - &
"
-help - &
Run the punk shell ( repl ) using bootsupport libraries.
" R u n t h e p u n k s h e l l ( r e p l ) u s i n g b o o t s u p p o r t l i b r a r i e s .
All arguments after the shell subcommand are passed through to the
All arguments after the shell subcommand are passed through to the
repl untouched ( they are not parsed or validated by make.tcl) ." ] " \
repl untouched ( they are not parsed or validated by make.tcl) ."
{ @ form - synopsis " m a k e . t c l s h e l l ? a r g . . . ? " } \
@ form - synopsis " m a k e . t c l s h e l l ? a r g . . . ? "
{ @ values - min 0 - max - 1
@ values - min 0 - max - 1
arg - type any - optional 1 - multiple 1 - help\
arg - type any - optional 1 - multiple 1 - help - &
" A r g u m e n t s p a s s e d t h r o u g h t o t h e p u n k r e p l . " }
" A r g u m e n t s p a s s e d t h r o u g h t o t h e p u n k r e p l . "
}
punk : : args::define\
punk : : args::define\
" @ i d - i d ( s c r i p t ) : : p u n k b o o t : : b u i l d s u i t e " \
" @ i d - i d ( s c r i p t ) : : p u n k b o o t : : b u i l d s u i t e " \
" @ n o r m a l i z e " \
" @ n o r m a l i z e " \
@ -3470,15 +3474,20 @@ if {[info exists ::env(PUNKBOOT_PLAIN)] && [string is true -strict $::env(PUNKBO
arg - type any - optional 1 - multiple 1 - help\
arg - type any - optional 1 - multiple 1 - help\
" A c t i o n ( l i s t | i n f o | b u i l d ) , s u i t e n a m e , a n d - f o r b u i l d - d r i v e r
" A c t i o n ( l i s t | i n f o | b u i l d ) , s u i t e n a m e , a n d - f o r b u i l d - d r i v e r
arguments forwarded to the suite' s suite.tcl untouched." }
arguments forwarded to the suite' s suite.tcl untouched." }
punk : : args::define\
" @ i d - i d ( s c r i p t ) : : p u n k b o o t : : t o o l " \
punk : : args::define {
" @ n o r m a l i z e " \
@ id - id " ( s c r i p t ) : : p u n k b o o t : : t o o l "
" @ c m d - n a m e [ l i s t " m a k e . t c l t o o l " ] - s u m m a r y [ l i s t [ d i c t g e t $ S U M M A R I E S t o o l ] ] - h e l p [ l i s t [ d i c t g e t $ H E L P T E X T S t o o l ] ] " \
@ cmd - name " m a k e . t c l t o o l " - &
{ @ form - synopsis " m a k e . t c l t o o l l i s t | i n f o | b u i l d | t e s t ? < t o o l n a m e > . . . ? ? - t e s t 0 | 1 ? " } \
-summary " $ { [ d i c t g e t $ S U M M A R I E S t o o l ] } " - &
{ @ values - min 0 - max - 1
-help - &
arg - type any - optional 1 - multiple 1 - help\
{ $ { [ dict get $HELPTEXTS tool] } }
@ form - synopsis " m a k e . t c l t o o l l i s t | i n f o | b u i l d | t e s t ? < t o o l n a m e > . . . ? ? - t e s t 0 | 1 ? "
@ values - min 0 - max - 1
arg - type any - optional 1 - multiple 1 - help - &
" A c t i o n ( l i s t | i n f o | b u i l d | t e s t ) , t o o l n a m e ( s ) , a n d - f o r b u i l d -
" A c t i o n ( l i s t | i n f o | b u i l d | t e s t ) , t o o l n a m e ( s ) , a n d - f o r b u i l d -
the - test 0 | 1 gate flag. Parsed by the handler." }
the - test 0 | 1 gate flag. Parsed by the handler."
}
punk : : args::define\
punk : : args::define\
" @ i d - i d ( s c r i p t ) : : p u n k b o o t : : h e l p " \
" @ i d - i d ( s c r i p t ) : : p u n k b o o t : : h e l p " \
" @ n o r m a l i z e " \
" @ n o r m a l i z e " \
@ -5249,6 +5258,11 @@ if {$::punkboot::command eq "tool"} {
puts stderr " t o o l b u i l d $ n a m e : c o u l d n o t i n s t a l l $ e x e ( $ c p e r r ) - i s a c o p y c u r r e n t l y r u n n i n g ? "
puts stderr " t o o l b u i l d $ n a m e : c o u l d n o t i n s t a l l $ e x e ( $ c p e r r ) - i s a c o p y c u r r e n t l y r u n n i n g ? "
exit 1
exit 1
}
}
# s t a m p i n s t a l l t i m e : f i l e c o p y p r e s e r v e s t h e s o u r c e m t i m e , a n d a z i g
# c a c h e - h i t r e b u i l d l e a v e s t h e z i g - o u t a r t i f a c t a t i t s o r i g i n a l l i n k
# t i m e - w i t h o u t t h i s , t o o l _ i n s t a l l _ s t a t e c o m p a r e s t h a t o l d l i n k t i m e
# a g a i n s t t h e t r e e a n d a d o c - o n l y e d i t k e e p s t h e t o o l ' s t a l e ' f o r e v e r .
file mtime $exe [ clock seconds]
puts stdout " t o o l b u i l d $ n a m e : i n s t a l l e d $ e x e ( [ f i l e s i z e $ e x e ] b y t e s ) "
puts stdout " t o o l b u i l d $ n a m e : i n s t a l l e d $ e x e ( [ f i l e s i z e $ e x e ] b y t e s ) "
}
}
exit 0
exit 0