1#************************************************************** 2# 3# Licensed to the Apache Software Foundation (ASF) under one 4# or more contributor license agreements. See the NOTICE file 5# distributed with this work for additional information 6# regarding copyright ownership. The ASF licenses this file 7# to you under the Apache License, Version 2.0 (the 8# "License"); you may not use this file except in compliance 9# with the License. You may obtain a copy of the License at 10# 11# http://www.apache.org/licenses/LICENSE-2.0 12# 13# Unless required by applicable law or agreed to in writing, 14# software distributed under the License is distributed on an 15# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16# KIND, either express or implied. See the License for the 17# specific language governing permissions and limitations 18# under the License. 19# 20#************************************************************** 21 22 23 24# operation mode (1 = identifiers, 2 = names) 25$op = shift @ARGV; 26die "Error: invalid operation" unless( $op >= 1 && $op <= 2); 27 28$i = 0; 29while( <> ) { 30 # trim newline 31 chomp( $_ ); 32 # trim leading/trailing whitespace 33 $_ =~ s/^\s*//g; 34 $_ =~ s/\s*$//g; 35 # skip empty lines 36 if( $_ ) { 37 # check for valid characters 38 $_ =~ /^[A-Z][a-zA-Z0-9]+$/ or die "Error: invalid entry: '$_'"; 39 # generate output 40 if( $op == 1 ) { 41 print( "const sal_Int32 PROP_$_ = $i;\n" ); 42 } elsif( $op == 2 ) { 43 print( "/* $i */ \"$_\",\n" ); 44 } 45 ++$i; 46 } 47} 48 49if( $op == 1 ) { 50 print( "const sal_Int32 PROP_COUNT = $i;\nconst sal_Int32 PROP_INVALID = -1;\n" ); 51} elsif( $op == 2 ) { 52 print( " \"\"\n" ); 53} 54