summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/syncqt44
-rw-r--r--mkspecs/features/qt_module_headers.prf20
2 files changed, 20 insertions, 44 deletions
diff --git a/bin/syncqt b/bin/syncqt
index 0c1fb098b2..e72a4f1a58 100755
--- a/bin/syncqt
+++ b/bin/syncqt
@@ -104,7 +104,6 @@ my $create_private_headers = 1;
my $module_fwd = "";
my $cache_module_fwd = 0;
my $developer_build = 0;
-my $no_module_version_header = 0;
my $makefile_generator = "";
my @modules_to_sync ;
$force_relative = 1 if ( -d "/System/Library/Frameworks" );
@@ -144,8 +143,6 @@ sub showUsage
print " fwd includes\n";
print " -developer-build Point libraries and binaries to a common directory for\n";
print " easy development\n";
- print " -no-module-version-header\n";
- print " Don't create module version header file\n";
print " -generator <PATH> Specify the makefile generator setting (e.g. 'UNIX')\n";
print " -help This help\n";
exit 0;
@@ -656,9 +653,6 @@ while ( @ARGV ) {
} elsif($arg eq "-developer-build") {
$var = "developer_build";
$val = "yes";
- } elsif($arg eq "-no-module-version-header") {
- $var = "no_module_version_header";
- $val = "yes";
} elsif($arg =~ /^-no-(.*)$/) {
$var = $1;
$val = "no";
@@ -778,8 +772,6 @@ while ( @ARGV ) {
$developer_build = 1;
} elsif ($var eq "makefile_generator") {
$makefile_generator = $val;
- } elsif ($var eq "no_module_version_header") {
- $no_module_version_header = 1;
} elsif ($var eq "output") {
my $outdir = $val;
if(checkRelative($outdir)) {
@@ -823,9 +815,6 @@ foreach my $lib (@modules_to_sync) {
#iteration info
my $dir = $modules{$lib};
my $module_version = "";
- my $module_major_version = 0;
- my $module_minor_version = 0;
- my $module_patch_version = 0;
if (-e "$modulepris{$lib}") {
my $content = fileContents($modulepris{$lib});
@@ -836,13 +825,6 @@ foreach my $lib (@modules_to_sync) {
chomp $module_version;
$module_version =~ s/^\s*QT\..*\.VERSION\s*=\s*([^#]+).*$/$1/;
$module_version =~ s/\s+$//;
- my @versions = split(/\./, $module_version);
- $module_major_version = int($versions[0]);
- chomp $module_major_version;
- $module_minor_version = int($versions[1]);
- chomp $module_minor_version;
- $module_patch_version = int($versions[2]);
- chomp $module_patch_version;
}
}
print "$lib: WARNING: Module\'s pri missing QT.<module>.VERSION variable! Private headers not versioned!\n" if (!$module_version);
@@ -930,32 +912,6 @@ foreach my $lib (@modules_to_sync) {
}
}
- # create the version header files for each module
- unless ($no_module_version_header) {
- my $modulepri = $modulepris{$lib};
- if (-e $modulepri) {
- my $modulepriname = basename($modulepri);
- my $moduleversionheader = "$modules{$lib}/" . lc($lib) . "version.h";
- $moduleversionheader =~ s,^$quoted_basedir,$out_basedir,;
- my $modulehexstring = sprintf("0x%02X%02X%02X", $module_major_version, $module_minor_version, $module_patch_version);
- open MODULE_VERSION_HEADER_FILE, ">$moduleversionheader" or die "Can't open $moduleversionheader for writing";
- print MODULE_VERSION_HEADER_FILE "/* This file was generated by syncqt with the info from sync.profile. */\n";
- print MODULE_VERSION_HEADER_FILE "#ifndef QT_". uc($lib) . "_VERSION_H\n";
- print MODULE_VERSION_HEADER_FILE "#define QT_". uc($lib) . "_VERSION_H\n";
- print MODULE_VERSION_HEADER_FILE "\n";
- print MODULE_VERSION_HEADER_FILE "#define " .uc($lib) . "_VERSION_STR \"" . $module_version . "\"\n";
- print MODULE_VERSION_HEADER_FILE "\n";
- print MODULE_VERSION_HEADER_FILE "#define " .uc($lib) . "_VERSION $modulehexstring\n", ;
- print MODULE_VERSION_HEADER_FILE "\n";
- print MODULE_VERSION_HEADER_FILE "#endif // QT_". uc($lib) . "_VERSION_H\n";
- close MODULE_VERSION_HEADER_FILE;
- basePrettify(\$moduleversionheader) if ($verbose_level < 2);
- print "$lib: created version header $moduleversionheader\n" if($verbose_level);
- } elsif ($modulepri) {
- print "$lib: WARNING: Module\'s pri file '$modulepri' not found.\n$lib: Skipped creating module version header.\n";
- }
- }
-
#create the new ones
foreach my $current_dir (split(/;/, $dir)) {
my @headers_paths = split(/;/, $pathtoheaders);
diff --git a/mkspecs/features/qt_module_headers.prf b/mkspecs/features/qt_module_headers.prf
index db697b1137..37146ff6ec 100644
--- a/mkspecs/features/qt_module_headers.prf
+++ b/mkspecs/features/qt_module_headers.prf
@@ -2,11 +2,31 @@
include($$MODULE_BASE_OUTDIR/include/$$TARGET/headers.pri, "", true)
lctarget = $$lower($$TARGET)
+uctarget = $$upper($$TARGET)
+# Create module version header
MODULE_VERSION_HEADER = $$find(SYNCQT.HEADER_FILES, (^|/)$${lctarget}version\\.h$)
count(MODULE_VERSION_HEADER, 1) {
MODULE_VERSION_HEADER = $$absolute_path($$MODULE_VERSION_HEADER, $$_PRO_FILE_PWD_)
+ !build_pass {
+ majorhexstr = $$format_number($$section(VERSION, ., 0, 0), width=2 zeropad obase=16)
+ minorhexstr = $$format_number($$section(VERSION, ., 1, 1), width=2 zeropad obase=16)
+ patchhexstr = $$format_number($$section(VERSION, ., 2, 2), width=2 zeropad obase=16)
+ modulehexstring = 0x$${majorhexstr}$${minorhexstr}$${patchhexstr}
+ MODULE_VERSION_HEADER_CONT = \
+ "/* This file was generated by qmake with the info from $${_PRO_FILE_}. */" \
+ "$${LITERAL_HASH}ifndef QT_$${uctarget}_VERSION_H" \
+ "$${LITERAL_HASH}define QT_$${uctarget}_VERSION_H" \
+ "" \
+ "$${LITERAL_HASH}define $${uctarget}_VERSION_STR \"$$VERSION\"" \
+ "" \
+ "$${LITERAL_HASH}define $${uctarget}_VERSION $$modulehexstring" \
+ "" \
+ "$${LITERAL_HASH}endif // QT_$${uctarget}_VERSION_H"
+ write_file($$MODULE_VERSION_HEADER, MODULE_VERSION_HEADER_CONT)|error("Aborting.")
+ }
+
HEADERS += $$MODULE_VERSION_HEADER
}