diff -r 885c2596c964 -r 5d007b20cfd0 qtmobility/bin/syncheaders --- a/qtmobility/bin/syncheaders Thu Aug 19 10:43:30 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,110 +0,0 @@ -#!/usr/bin/perl -############################################################################# -## -## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -## All rights reserved. -## Contact: Nokia Corporation (qt-info@nokia.com) -## -## This file is part of the Qt Mobility Components. -## -## $QT_BEGIN_LICENSE:LGPL$ -## No Commercial Usage -## This file contains pre-release code and may not be distributed. -## You may use this file in accordance with the terms and conditions -## contained in the Technology Preview License Agreement accompanying -## this package. -## -## GNU Lesser General Public License Usage -## Alternatively, this file may be used under the terms of the GNU Lesser -## General Public License version 2.1 as published by the Free Software -## Foundation and appearing in the file LICENSE.LGPL included in the -## packaging of this file. Please review the following information to -## ensure the GNU Lesser General Public License version 2.1 requirements -## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -## -## In addition, as a special exception, Nokia gives you certain additional -## rights. These rights are described in the Nokia Qt LGPL Exception -## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -## -## If you have questions regarding the use of this file, please contact -## Nokia at qt-info@nokia.com. -## -## -## -## -## -## -## -## -## $QT_END_LICENSE$ -## -############################################################################# - -use strict; -use warnings; - -use File::Basename; -use File::stat; -use File::Path; - -my $allow_non_exported = 1; -if ( @ARGV && $ARGV[0] eq "-needs-export" ) { - shift(@ARGV); - $allow_non_exported = 0; -} - -my $outdir = shift(@ARGV) or usage(); -mkpath($outdir); - -my $indir = shift(@ARGV) or usage(); -processFile($indir); - -exit 0; - -sub usage -{ - print "Usage: syncheaders [-needs-export] outdir indir\n"; - print " Processes all public header files \n"; - exit 2; -} - -sub processFile -{ - my ( $read_dir ) = @_; - my @allFiles; - my $filename; - - opendir( THISDIR, $read_dir) or die "Can't read $read_dir"; - #process all header files - @allFiles = grep /\.h/, readdir THISDIR; - #don't include private headers - @allFiles = grep !/_p\.h/, @allFiles; - - for $filename (@allFiles) { - open INPUT, "$indir/$filename" or die "Can't read $filename"; - - my $src_s = stat("$indir/$filename"); - my $now = $src_s->mtime; - - while () { - if ( /^\s*class\s+.*_EXPORT\s+([^\s:]+)/ || - ($allow_non_exported && /^\s*class\s+([^\s:<]+)/ && index($_, ";") == -1) || - /syncqtopia\s+header\s+([^\s:]+)/ ) - { - # Skip preprocessor-related items - next if ( $1 =~ /#/ ); - - my $outfile = "$outdir/$1"; - - print "Create header $outfile\n"; - - #system("install", "-m", "0644", $filename, $outfile); - open OUT, ">$outfile" or die "Can't write $outfile"; - print OUT "#include \"".basename($filename)."\"\n"; - close OUT; - } - } - close INPUT; - } -} -