X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=m4%2Fnsc.m4;h=ad9ed2493a642867c1c380eaca6d93f5a2820906;hb=11945b1bea98305d496ff09cca8273607d2a3952;hp=2baf29945bff900403f09b4dc3fe6221b3be9353;hpb=d27411c82741d5ab43ed35ba1ecd7339c3073330;p=nsc-5.git diff --git a/m4/nsc.m4 b/m4/nsc.m4 index 2baf299..ad9ed24 100644 --- a/m4/nsc.m4 +++ b/m4/nsc.m4 @@ -3,12 +3,15 @@ dnl ### NSC -- Zone File Generator dnl ### (c) 1997--2011 Martin Mares dnl ### dnl ### Usage: m4 -DVERS=path-to-version-file nsc.m4 domain-source-files >zone-file +dnl ### or: m4 -DHASHING nsc.m4 domain-source-files | md5sum dnl ### include(m4/dnslib.m4) # Version number -ifdef(`VERS',` +ifdef(`HASHING', `define(`VERSION',`YYYYMMDDNN')', ` + +ifdef(`VERS',`',`nsc_fatal_error(`VERS macro not defined')') define(TODAY_CODE, translit(esyscmd(`date +"%Y%m%d"'),` ',`')) @@ -21,8 +24,6 @@ syscmd(echo >VERS "`define'(`LAST_TODAY_CODE',TODAY_CODE) `define'(`SUBVER_NUM', ifelse(eval(SUBVER_NUM > 99),1,`nsc_fatal_error(`Too many zone changes in a single day, you must tweak 'VERS` manually')') define(`VERSION',TODAY_CODE`'format(`%02d', SUBVER_NUM)) -',` -define(`VERSION', 1) ') # Record names @@ -34,12 +35,12 @@ define(nsc_abs_name, `ifelse(CURRENT_NAME, translit(CURRENT_NAME,.,:), CURRENT_N # SOA record define(nsc_SOA, ` -$ORIGIN CURRENT_DOMAIN +ifelse(CURRENT_DOMAIN,@,`',$ORIGIN CURRENT_DOMAIN) $TTL MINTTL nsc_emit_name `SOA' nsc_corr_dot(NSNAME) MAINTNAME ( VERSION REFRESH RETRY EXPIRE MINTTL )') define(SOA, `ifdef(`CURRENT_DOMAIN',`ifdef(`REVERSE_MODE',,`nsc_fatal_error(`SOA record defined twice')')')dnl -define(`CURRENT_DOMAIN',$1.)dnl +define(`CURRENT_DOMAIN',ifelse($1,@,@,$1.))dnl nsc_set_name(CURRENT_DOMAIN)dnl ifdef(`REVERSE_MODE',,`nsc_SOA')') @@ -159,6 +160,7 @@ m4wrap(`nsc_cleanup') divert(0)dnl `;;;' Primary zone file -`;;;' Generated by NSCVER (nsc.m4) on CURRENT_DATE +`;;;' Generated by NSCVER (nsc.m4) on ifdef(`HASHING', ``CURRENT_DATE'', `CURRENT_DATE') `;;;' Please do not edit manually +`;;;' `VERSION': VERSION `'