misc/libfreetype/builds/atari/deflinejoiner.awk
changeset 9431 0f5961910e27
parent 9357 a501f5ec7b34
parent 9429 7a97a554ac80
child 9433 f0a8ac191839
--- a/misc/libfreetype/builds/atari/deflinejoiner.awk	Tue Jul 16 11:14:27 2013 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-#!/usr/bin/env awk
-
-
-function shift( array, \
-                junk, elm0, l )
-{
-  elm0 = array[0]
-  for ( l = 0; l < asorti( array, junk ) - 1; l++ )
-    array[l] = array[l+1];
-  delete array[l]
-  return elm0
-}
-
-
-function init_cpp_src_line()
-{
-  logical_line = ""
-  delete break_pos 
-}
-
-
-function shift_valid_bp( array, \
-                         junk, elm )
-{
-  elm = -1
-
-  if ( 0 < asorti( array, junk ) )
-    do {
-      elm = shift( array )
-    } while ( 0 > elm );
-
-  return elm
-}
-
-
-function check_cpp_src_line_break_pos( \
-                                       i, junk )
-{
-  printf( "break_pos:" )
-  for ( i = 0; i < asorti( break_pos, junk ); i++ )
-    printf( " %d", break_pos[i] );
-  printf( "\n" )
-}
-
-
-function check_cpp_src_line()
-{
-  printf( "logical_line[%s]\n", logical_line )
-  check_cpp_src_line_break_pos()
-}
-
-
-function append_line( phys_line, \
-                      filt_line, bp_len )
-{
-  filt_line = phys_line
-  sub( /\\$/, " ", filt_line )
-  logical_line    = logical_line filt_line
-  bp_len = asorti( break_pos, junk )
-  break_pos[bp_len] = length( logical_line ) - 1
-}
-
-
-function print_line( \
-                     c0, c1, i, junk, part_str )
-{
-  c0 = 0
-
-  while( asorti( break_pos, junk ) > 1 )
-  {
-    if ( ( c1 = shift_valid_bp( break_pos ) ) < 1 )
-    {
-      part_str = substr( logical_line, c0 + 1 )
-      printf( "%s\n", part_str )
-      return
-    }
-
-    part_str = substr( logical_line, c0 + 1, c1 - c0 + 1 )
-    gsub( / $/, "\\", part_str )
-    printf( "%s\n", part_str )
-    c0 = c1 + 1
-  }
-
-  part_str = substr( logical_line, c0 + 1 )
-  printf( "%s\n", part_str )
-}
-
-
-function shrink_spaces( pos, \
-                        tail, removed_length, k )
-{
-  tail = substr( logical_line, pos )
-  sub( /^[ \t]+/, " ", tail )
-  removed_length = length( logical_line ) - pos - length( tail ) + 1
-  logical_line = substr( logical_line, 0, pos - 1 ) tail
-
-
-  for ( k = 0; k < asorti( break_pos, junk ); k++ )
-    if ( ( pos + removed_length ) <= break_pos[k] )
-      break_pos[k] = break_pos[k] - removed_length;
-    else if ( pos <= break_pos[k] )
-      break_pos[k] = -1;
-
-  return removed_length
-}
-
-
-function shrink_spaces_to_linebreak( pos, \
-                                     junk, part_str, removed_length, i )
-{
-  for ( i = 0; i < asorti( break_pos, junk ) && break_pos[i] < pos ; i++ )
-    ;
- 
-  if ( break_pos[i] < 1 ) 
-    return;
-
-  part_str = substr( logical_line, pos, break_pos[i] - pos + 1 )
-  sub( /^[ \t]+/, " ", part_str )
-  removed_length = ( break_pos[i] - pos + 1 ) - length( part_str )
-
-  tail = substr( logical_line, pos + removed_length )
-  logical_line = substr( logical_line, 0, pos - 1 ) tail
-
-  for ( ; i < asorti( break_pos, junk ); i++ )
-    break_pos[i] -= removed_length;
-
-  return removed_length
-}
-
-
-function delete_linebreaks_in_2nd_token( \
-                                           tail, paren_depth, junk, i, j, k, l )
-{
-  if ( logical_line ~ /^[ \t]*#[ \t]*define[ \t]+[0-9A-Za-z_]+\(/ )
-  {
-    tail = logical_line
-    sub( /^[ \t]*#[ \t]*define[ \t]+[0-9A-Za-z_]+/, "", tail )
-
-    paren_depth = 0
-    l = 0
-    i = length( logical_line ) - length( tail ) + 1 # seek to the 1st op paren
-    j = i
-    do {
-      if ( substr( logical_line, j, 2 ) ~ /[ \t][ \t]/ )
-        l = shrink_spaces( j );
-      else if ( substr( logical_line, j, 1 ) == "(" )
-        paren_depth += 1;
-      else if ( substr( logical_line, j, 1 ) == ")" )
-        paren_depth -= 1;
-      j += 1
-    } while ( j < length( logical_line ) && paren_depth != 0 )
-
-    for ( k = 0; k < asorti( break_pos, junk ); k++ )
-      if ( i <= break_pos[k] && break_pos[k] < j )
-        break_pos[k] = -1;
-
-    if ( l > 0 )
-      shrink_spaces_to_linebreak( j );
-  }
-}
-
-
-BEGIN{
-  init_cpp_src_line()
-}
-{
-  append_line( $0 )
-  if ( $0 !~ /\\$/ )
-  {
-    delete_linebreaks_in_2nd_token()
-    print_line()
-    init_cpp_src_line()
-  }
-}
-END{
-  if ( 0 < length( logical_line ) )
-  {
-    delete_linebreaks_in_2nd_token()
-    print_line()
-  }
-}