Changeset 1121 for trunk/src/kmk
- Timestamp:
- Sep 25, 2007, 7:57:57 AM (18 years ago)
- Location:
- trunk/src/kmk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kmk/Makefile.am
r1120 r1121 112 112 -DCONFIG_WITH_NANOTS \ 113 113 -DCONFIG_WITH_SET_CONDITIONALS \ 114 -DCONFIG_WITH_DATE \ 114 115 -DCONFIG_PRETTY_COMMAND_PRINTING \ 115 116 \ -
trunk/src/kmk/Makefile.kmk
r1117 r1121 114 114 CONFIG_WITH_NANOTS \ 115 115 CONFIG_WITH_SET_CONDITIONALS \ 116 CONFIG_WITH_DATE \ 116 117 CONFIG_PRETTY_COMMAND_PRINTING \ 117 118 \ -
trunk/src/kmk/function.c
r991 r1121 2673 2673 #endif 2674 2674 2675 #ifdef CONFIG_WITH_DATE 2676 static char * 2677 func_date (char *o, char **argv, const char *funcname) 2678 { 2679 char *buf; 2680 size_t buf_size; 2681 time_t tval; 2682 const char *format = !strcmp (funcname, "date-utc") 2683 ? "%Y-%m-%dT%H:%M:%SZ" 2684 : "%Y-%m-%dT%H:%M:%S"; 2685 if (argv[0]) 2686 { 2687 buf = argv[0]; 2688 while (isspace ((unsigned char)*buf)) 2689 buf++; 2690 if (*buf) 2691 format = buf; 2692 } 2693 2694 if (argv[1]) 2695 { 2696 /* FIXME */ 2697 fatal (NILF, _("The reverse strftime aspect of the $(date*) functions isn't implemented yet.\n")); 2698 } 2699 else 2700 time(&tval); 2701 2702 buf_size = 64; 2703 buf = xmalloc (buf_size); 2704 while (strftime (buf, buf_size, format, 2705 !strcmp (funcname, "date-utc") 2706 ? gmtime (&tval) : localtime (&tval)) == 0) 2707 buf = xrealloc (buf, buf_size <<= 1); 2708 o = variable_buffer_output (o, buf, strlen (buf)); 2709 free (buf); 2710 return o; 2711 } 2712 #endif 2713 2675 2714 2676 2715 #ifdef CONFIG_WITH_STACK … … 3153 3192 { STRING_SIZE_TUPLE("comp-cmds"), 3, 3, 1, func_comp_vars}, 3154 3193 #endif 3194 #ifdef CONFIG_WITH_DATE 3195 { STRING_SIZE_TUPLE("date"), 0, 1, 1, func_date}, 3196 { STRING_SIZE_TUPLE("date-utc"), 0, 1, 1, func_date}, 3197 #endif 3155 3198 #ifdef CONFIG_WITH_STACK 3156 3199 { STRING_SIZE_TUPLE("stack-push"), 2, 2, 1, func_stack_push}, -
trunk/src/kmk/variable.c
r1117 r1121 1027 1027 1028 1028 /* Define KMK_FEATURES to indicate various working KMK features. */ 1029 # if defined(CONFIG_WITH_RSORT) \ 1030 && defined(CONFIG_WITH_ABSPATHEX) \ 1031 && defined(CONFIG_WITH_TOUPPER_TOLOWER) \ 1032 && defined(CONFIG_WITH_VALUE_LENGTH) && defined(CONFIG_WITH_COMPARE) \ 1033 && defined(CONFIG_WITH_STACK) \ 1034 && defined(CONFIG_WITH_MATH) \ 1035 && defined(CONFIG_WITH_XARGS) \ 1036 && defined(CONFIG_WITH_EXPLICIT_MULTITARGET) \ 1037 && defined(CONFIG_WITH_PREPEND_ASSIGNMENT) \ 1038 && defined(CONFIG_WITH_SET_CONDITIONALS) \ 1039 && defined(KMK_HELPERS) 1029 # if defined (CONFIG_WITH_RSORT) \ 1030 && defined (CONFIG_WITH_ABSPATHEX) \ 1031 && defined (CONFIG_WITH_TOUPPER_TOLOWER) \ 1032 && defined (CONFIG_WITH_VALUE_LENGTH) && defined (CONFIG_WITH_COMPARE) \ 1033 && defined (CONFIG_WITH_STACK) \ 1034 && defined (CONFIG_WITH_MATH) \ 1035 && defined (CONFIG_WITH_XARGS) \ 1036 && defined (CONFIG_WITH_EXPLICIT_MULTITARGET) \ 1037 && defined (CONFIG_WITH_PREPEND_ASSIGNMENT) \ 1038 && defined (CONFIG_WITH_SET_CONDITIONALS) \ 1039 && defined (CONFIG_WITH_DATE) \ 1040 && defined (KMK_HELPERS) 1040 1041 (void) define_variable ("KMK_FEATURES", 12, 1041 1042 "append-dash-n abspath" … … 1050 1051 " prepend-assignment" 1051 1052 " set-conditionals" 1053 " date" 1052 1054 " kb-src-tool kb-obj-base kb-obj-suff kb-src-prop kb-src-one " 1053 1055 , o_default, 0); … … 1085 1087 strcat (buf, " set-conditionals"); 1086 1088 # endif 1089 # if defined (CONFIG_WITH_DATE) 1090 strcat (buf, " date"); 1091 # endif 1087 1092 # if defined (KMK_HELPERS) 1088 1093 strcat (buf, " kb-src-tool kb-obj-base kb-obj-suff kb-src-prop kb-src-one");
Note:
See TracChangeset
for help on using the changeset viewer.