386653 Remove dependency on nsBuildID.h, whose recent death is causing build failures. Introduce CmXULAppInfo, an nsIXULAppInfo implementation, and build system support to maintain the build ID ourselves. r=smorgan, also examined by ardisonne, sr=me for camino, checking in now to clear the build failures
git-svn-id: svn://10.0.0.236/trunk@229668 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
481a106f56
commit
bddf84354f
@ -4083,6 +4083,8 @@
|
||||
3F44AC0105BDFB9E00CB4B08,
|
||||
3F44AC0205BDFB9E00CB4B08,
|
||||
3F44AC0305BDFB9E00CB4B08,
|
||||
3F44AC0305BDFB9E00CB4B14,
|
||||
3F44AC0305BDFB9E00CB4B18,
|
||||
3F44AC0405BDFB9E00CB4B08,
|
||||
3F44AC0505BDFB9E00CB4B08,
|
||||
3F44AC0605BDFB9E00CB4B08,
|
||||
@ -4395,6 +4397,18 @@
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AC0305BDFB9E00CB4B14 = {
|
||||
fileRef = F558B1F1030F6E470166971B;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AC0305BDFB9E00CB4B18 = {
|
||||
fileRef = F558B1F1030F6E470166971F;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AC0405BDFB9E00CB4B08 = {
|
||||
fileRef = F5D98EBC031AC38601A96654;
|
||||
isa = PBXBuildFile;
|
||||
@ -5163,6 +5177,7 @@
|
||||
3F44AC9A05BDFB9E00CB4B08,
|
||||
3F44AC9C05BDFB9E00CB4B08,
|
||||
3F44AC9D05BDFB9E00CB4B08,
|
||||
3F44AC9D85BDFB9E00CB4B08,
|
||||
3F44AC9E05BDFB9E00CB4B08,
|
||||
3F44AC9F05BDFB9E00CB4B08,
|
||||
3F44ACA005BDFB9E00CB4B08,
|
||||
@ -5179,6 +5194,7 @@
|
||||
3F44ACAB05BDFB9E00CB4B08,
|
||||
3F44ACAC05BDFB9E00CB4B08,
|
||||
3F44ACAD05BDFB9E00CB4B08,
|
||||
3F44ACAD05BDFB9E00CB4B18,
|
||||
3F44ACAE05BDFB9E00CB4B08,
|
||||
3F44ACAF05BDFB9E00CB4B08,
|
||||
3F44ACB005BDFB9E00CB4B08,
|
||||
@ -5401,6 +5417,12 @@
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AC9D85BDFB9E00CB4B08 = {
|
||||
fileRef = F56F241F02AC6D0401A967F3;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AC9E05BDFB9E00CB4B08 = {
|
||||
fileRef = F53E012C02AEE93601A967F3;
|
||||
isa = PBXBuildFile;
|
||||
@ -5497,6 +5519,12 @@
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44ACAD05BDFB9E00CB4B18 = {
|
||||
fileRef = F558B1F1030F6E470166972F;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44ACAE05BDFB9E00CB4B08 = {
|
||||
fileRef = F5D98EB9031AC37801A96654;
|
||||
isa = PBXBuildFile;
|
||||
@ -7955,6 +7983,8 @@
|
||||
3F44AE3A05BDFBA000CB4B08,
|
||||
3F44AE3B05BDFBA000CB4B08,
|
||||
3F44AE3C05BDFBA000CB4B08,
|
||||
3F44AE3C05BDFBA000CB4B14,
|
||||
3F44AE3C05BDFBA000CB4B18,
|
||||
3F44AE3D05BDFBA000CB4B08,
|
||||
3F44AE3E05BDFBA000CB4B08,
|
||||
3F44AE3F05BDFBA000CB4B08,
|
||||
@ -8267,6 +8297,18 @@
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AE3C05BDFBA000CB4B14 = {
|
||||
fileRef = F558B1F1030F6E470166971B;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AE3C05BDFBA000CB4B18 = {
|
||||
fileRef = F558B1F1030F6E470166971F;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AE3D05BDFBA000CB4B08 = {
|
||||
fileRef = F5D98EBC031AC38601A96654;
|
||||
isa = PBXBuildFile;
|
||||
@ -9052,6 +9094,7 @@
|
||||
3F44AEE505BDFBA000CB4B08,
|
||||
3F44AEE605BDFBA000CB4B08,
|
||||
3F44AEE705BDFBA000CB4B08,
|
||||
3F44AEE705BDFBA000CB4B18,
|
||||
3F44AEE805BDFBA000CB4B08,
|
||||
3F44AEE905BDFBA000CB4B08,
|
||||
3F44AEEA05BDFBA000CB4B08,
|
||||
@ -9374,6 +9417,12 @@
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AEE705BDFBA000CB4B18 = {
|
||||
fileRef = F558B1F1030F6E470166972F;
|
||||
isa = PBXBuildFile;
|
||||
settings = {
|
||||
};
|
||||
};
|
||||
3F44AEE805BDFBA000CB4B08 = {
|
||||
fileRef = F5D98EB9031AC37801A96654;
|
||||
isa = PBXBuildFile;
|
||||
@ -15549,6 +15598,8 @@
|
||||
F5125A110202064D01FAFD9F,
|
||||
F529788A0371820B01026DCE,
|
||||
F558B1F0030F6E470166970F,
|
||||
F558B1F1030F6E470166971B,
|
||||
F558B1F1030F6E470166971F,
|
||||
F5DE10E80209DC0601A967DF,
|
||||
F5DE10E70209DC0601A967DF,
|
||||
DE6D27E30C1A013800292043,
|
||||
@ -16505,11 +16556,39 @@
|
||||
refType = 2;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
F558B1F1030F6E470166971B = {
|
||||
fileEncoding = 30;
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = sourcecode.c.h;
|
||||
name = CmXULAppData.h;
|
||||
path = generated/CmXULAppData.h;
|
||||
refType = 2;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
F558B1F1030F6E470166971F = {
|
||||
fileEncoding = 30;
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = sourcecode.c.h;
|
||||
name = CmXULAppInfo.h;
|
||||
path = src/embedding/CmXULAppInfo.h;
|
||||
refType = 2;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
F558B1F1030F6E470166972F = {
|
||||
fileEncoding = 30;
|
||||
isa = PBXFileReference;
|
||||
lastKnownFileType = sourcecode.cpp.objcpp;
|
||||
name = CmXULAppInfo.mm;
|
||||
path = src/embedding/CmXULAppInfo.mm;
|
||||
refType = 2;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
F558B1F603107E4A0166970F = {
|
||||
children = (
|
||||
F529788B0371820B01026DCE,
|
||||
F5DE10EB0209DC0601A967DF,
|
||||
F558B1F1030F6E470166970F,
|
||||
F558B1F1030F6E470166972F,
|
||||
F5DE10EA0209DC0601A967DF,
|
||||
DE6D27E60C1A014D00292043,
|
||||
DEA548490A251FA900186C93,
|
||||
|
||||
@ -51,8 +51,15 @@ DIRS = \
|
||||
|
||||
APP_NAME = Camino
|
||||
|
||||
FOX_APP_VERSION_FILE = $(srcdir)/../browser/config/version.txt
|
||||
PYTHON ?= python
|
||||
|
||||
FOX_APP_VERSION_FILE = $(topsrcdir)/browser/config/version.txt
|
||||
FOX_APP_VERSION = $(shell cat $(FOX_APP_VERSION_FILE))
|
||||
PLATFORM_VERSION_FILE = $(topsrcdir)/config/milestone.txt
|
||||
PLATFORM_VERSION = $(shell egrep -m 1 "^[^\#]+" $(PLATFORM_VERSION_FILE))
|
||||
PLATFORM_BUILD_ID_FILE = generated/platform_build_id
|
||||
PLATFORM_BUILD_ID = $(shell $(PYTHON) $(topsrcdir)/toolkit/xre/make-platformini.py --print-buildid)
|
||||
PLATFORM_INI_FILE = $(DIST)/bin/platform.ini
|
||||
|
||||
ifdef MOZ_DEBUG
|
||||
BUILDSTYLE = Development
|
||||
@ -88,17 +95,37 @@ clean clobber repackage::
|
||||
rm -rf $(DIST)/$(APP_NAME).app
|
||||
rm -rf embed-replacements.tmp
|
||||
rm -rf generated
|
||||
rm -rf $(PLATFORM_INI_FILE)
|
||||
|
||||
generated:
|
||||
mkdir -p $@
|
||||
|
||||
# Generate files which need to pull version numbers from elsewhere in the tree
|
||||
generated/all-camino.js: $(srcdir)/resources/application/all-camino.js.in $(FOX_APP_VERSION_FILE) generated
|
||||
sed -e "s/@FOX_APP_VERSION@/$(FOX_APP_VERSION)/" $< > $@
|
||||
sed -e "s/%FOX_APP_VERSION%/$(FOX_APP_VERSION)/" $< > $@
|
||||
|
||||
# This will only touch the build ID file if the build ID has changed. The
|
||||
# file's timestamp will be preserved when the build ID hasn't changed,
|
||||
# reducing unnecessary build activity.
|
||||
$(PLATFORM_BUILD_ID_FILE): FORCE
|
||||
grep -lFx "$(PLATFORM_BUILD_ID)" $@ >& /dev/null || \
|
||||
echo $(PLATFORM_BUILD_ID) > $@
|
||||
|
||||
# Put platform.ini into $(DIST)/bin, because that's where Tinderbox looks to
|
||||
# figure out the build ID. It currently doesn't need to be distributed with
|
||||
# the application.
|
||||
$(PLATFORM_INI_FILE): $(PLATFORM_BUILD_ID_FILE) $(PLATFORM_VERSION_FILE)
|
||||
echo [Build] > $@
|
||||
echo BuildID=$(PLATFORM_BUILD_ID) >> $@
|
||||
echo Milestone=$(PLATFORM_VERSION) >> $@
|
||||
|
||||
generated/CmXULAppData.h: $(srcdir)/src/embedding/CmXULAppData.h.in $(PLATFORM_BUILD_ID_FILE) $(PLATFORM_VERSION_FILE)
|
||||
sed -e "s/%PLATFORM_BUILD_ID%/$(PLATFORM_BUILD_ID)/" \
|
||||
-e "s/%PLATFORM_VERSION%/$(PLATFORM_VERSION)/" $< > $@
|
||||
|
||||
# The embed-replacements rsync is done for both srcdir and objdir builds
|
||||
# to avoid adding CVS stuff to embed.jar.
|
||||
libs:: generated/all-camino.js
|
||||
libs:: generated/all-camino.js generated/CmXULAppData.h $(PLATFORM_INI_FILE)
|
||||
rsync -aC --delete $(srcdir)/embed-replacements/ embed-replacements.tmp
|
||||
cd embed-replacements.tmp && $(ZIP) -r0DX ../../dist/Embed/chrome/embed.jar *
|
||||
$(PBBUILD) -project Camino.xcode -target $(TARGET) -buildstyle $(BUILDSTYLE) $(PBBUILD_SETTINGS)
|
||||
|
||||
@ -67,7 +67,7 @@ pref("general.useragent.vendor", "Camino");
|
||||
pref("general.useragent.vendorSub", "2.0a1pre");
|
||||
|
||||
// work around stupid sites sniffing for firefox instead of gecko
|
||||
pref("general.useragent.extra.notfox", "(like Firefox/@FOX_APP_VERSION@)");
|
||||
pref("general.useragent.extra.notfox", "(like Firefox/%FOX_APP_VERSION%)");
|
||||
|
||||
pref("browser.chrome.favicons", true);
|
||||
pref("browser.urlbar.autocomplete.enabled", true);
|
||||
|
||||
@ -73,8 +73,8 @@
|
||||
#import "SiteIconProvider.h"
|
||||
#import "SessionManager.h"
|
||||
#import "CHPermissionManager.h"
|
||||
#import "CmXULAppInfo.h"
|
||||
|
||||
#include "nsBuildID.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsEmbedAPI.h"
|
||||
#include "nsString.h"
|
||||
@ -901,7 +901,7 @@ NSString* const kPreviousSessionTerminatedNormallyKey = @"PreviousSessionTermina
|
||||
//
|
||||
- (IBAction)aboutWindow:(id)sender
|
||||
{
|
||||
NSString* version = [NSString stringWithFormat:@"%010u", NS_BUILD_ID];
|
||||
NSString* version = [XULAppInfo appBuildID];
|
||||
NSDictionary* d = [NSDictionary dictionaryWithObject:version forKey:@"ApplicationVersion"];
|
||||
[NSApp orderFrontStandardAboutPanelWithOptions:d];
|
||||
}
|
||||
|
||||
@ -24,6 +24,7 @@
|
||||
* Christopher Seawood <cls@seawood.org>
|
||||
* Chris Waterson <waterson@netscape.com>
|
||||
* Benjamin Smedberg <benjamin@smedbergs.us>
|
||||
* Mark Mentovai <mark@moxienet.com>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
@ -51,7 +52,9 @@
|
||||
*/
|
||||
#define NSGETMODULE(_name) _name##_NSGetModule
|
||||
|
||||
#ifdef _BUILD_STATIC_BIN
|
||||
#define MODULES \
|
||||
MODULE(CmXULAppInfoModule) \
|
||||
MODULE(xpcomObsoleteModule) \
|
||||
MODULE(nsI18nModule) \
|
||||
MODULE(nsChardetModule) \
|
||||
@ -90,6 +93,11 @@
|
||||
MODULE(BOOT) \
|
||||
MODULE(NSS) \
|
||||
/* end of list */
|
||||
#else // _BUILD_STATIC_BIN
|
||||
#define MODULES \
|
||||
MODULE(CmXULAppInfoModule) \
|
||||
/* end of list */
|
||||
#endif // _BUILD_STATIC_BIN
|
||||
|
||||
/**
|
||||
* Declare the NSGetModule() routine for each module
|
||||
|
||||
48
mozilla/camino/src/embedding/CmXULAppData.h.in
Normal file
48
mozilla/camino/src/embedding/CmXULAppData.h.in
Normal file
@ -0,0 +1,48 @@
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is nsIXULAppInfo for Camino.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Google Inc.
|
||||
* Portions created by the Initial Developer are Copyright (C) 2007
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Mark Mentovai <mark@moxienet.com> (Original Author)
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
#ifndef CmXULAppData_h__
|
||||
#define CmXULAppData_h__
|
||||
|
||||
#define CMXULAPPDATA_VENDOR "Mozilla"
|
||||
#define CMXULAPPDATA_NAME "Camino"
|
||||
#define CMXULAPPDATA_ID "{837e87d2-9e3c-4870-81be-86e6c4560dfd}"
|
||||
#define CMXULAPPDATA_VERSION "2.0a1pre"
|
||||
#define CMXULAPPDATA_BUILD_ID "%PLATFORM_BUILD_ID%"
|
||||
#define CMXULAPPDATA_PLATFORM_VERSION "%PLATFORM_VERSION%"
|
||||
#define CMXULAPPDATA_PLATFORM_BUILD_ID "%PLATFORM_BUILD_ID%"
|
||||
|
||||
#endif // CmXULAppData_h__
|
||||
62
mozilla/camino/src/embedding/CmXULAppInfo.h
Normal file
62
mozilla/camino/src/embedding/CmXULAppInfo.h
Normal file
@ -0,0 +1,62 @@
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is nsIXULAppInfo for Camino.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Google Inc.
|
||||
* Portions created by the Initial Developer are Copyright (C) 2007
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Mark Mentovai <mark@moxienet.com> (Original Author)
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
#ifndef CmXULAppInfo_h__
|
||||
#define CmXULAppInfo_h__
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
#include "nsIXULAppInfo.h"
|
||||
|
||||
class CmXULAppInfo : public nsIXULAppInfo {
|
||||
public:
|
||||
NS_DECL_ISUPPORTS
|
||||
NS_DECL_NSIXULAPPINFO
|
||||
};
|
||||
|
||||
@interface XULAppInfo : NSObject
|
||||
|
||||
+ (NSString *)vendor;
|
||||
+ (NSString *)name;
|
||||
+ (NSString *)ID;
|
||||
+ (NSString *)version;
|
||||
+ (NSString *)appBuildID;
|
||||
+ (NSString *)platformVersion;
|
||||
+ (NSString *)platformBuildID;
|
||||
|
||||
@end
|
||||
|
||||
#endif // CmXULAppInfo_h__
|
||||
165
mozilla/camino/src/embedding/CmXULAppInfo.mm
Normal file
165
mozilla/camino/src/embedding/CmXULAppInfo.mm
Normal file
@ -0,0 +1,165 @@
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is nsIXULAppInfo for Camino.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Google Inc.
|
||||
* Portions created by the Initial Developer are Copyright (C) 2007
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Mark Mentovai <mark@moxienet.com> (Original Author)
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
#define XPCOM_TRANSLATE_NSGM_ENTRY_POINT 1
|
||||
|
||||
#include "CmXULAppInfo.h"
|
||||
|
||||
#include "CmXULAppData.h"
|
||||
#include "nsIGenericFactory.h"
|
||||
#include "nsString.h"
|
||||
|
||||
//
|
||||
// CmXULAppInfo module
|
||||
//
|
||||
|
||||
static const CmXULAppInfo kCmXULAppInfo;
|
||||
|
||||
static NS_METHOD CmXULAppInfoConstructor(nsISupports *outer,
|
||||
REFNSIID iid,
|
||||
void **result) {
|
||||
NS_ENSURE_NO_AGGREGATION(outer);
|
||||
return const_cast<CmXULAppInfo *>(&kCmXULAppInfo)->QueryInterface(iid,
|
||||
result);
|
||||
}
|
||||
|
||||
// {76849bf1-199d-41a6-aae6-873fcaf123ea}
|
||||
#define CMXULAPPINFO_CID \
|
||||
{0x76849bf1, 0x199d, 0x41a6, {0xaa, 0xe6, 0x87, 0x3f, 0xca, 0xf1, 0x23, 0xea}}
|
||||
|
||||
static nsModuleComponentInfo kComponents[] = {
|
||||
{
|
||||
"CmXULAppInfo",
|
||||
CMXULAPPINFO_CID,
|
||||
"@mozilla.org/xre/app-info;1",
|
||||
CmXULAppInfoConstructor
|
||||
}
|
||||
};
|
||||
|
||||
NS_IMPL_NSGETMODULE(CmXULAppInfoModule, kComponents)
|
||||
|
||||
//
|
||||
// CmXULAppInfo class (XPCOM/C++)
|
||||
//
|
||||
|
||||
// This can only exist as a singleton object, instantiated as a static const
|
||||
// object above. Deny destruction attempts by avoiding NS_IMPL_ISUPPORTS and
|
||||
// overriding AddRef and Release.
|
||||
|
||||
NS_IMPL_QUERY_INTERFACE1(CmXULAppInfo, nsIXULAppInfo)
|
||||
|
||||
NS_IMETHODIMP_(nsrefcnt) CmXULAppInfo::AddRef() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP_(nsrefcnt) CmXULAppInfo::Release() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
// Pass everything through to XULAppInfo.
|
||||
|
||||
NS_IMETHODIMP CmXULAppInfo::GetVendor(nsACString &result) {
|
||||
result.Assign([[XULAppInfo vendor] UTF8String]);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP CmXULAppInfo::GetName(nsACString &result) {
|
||||
result.Assign([[XULAppInfo name] UTF8String]);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP CmXULAppInfo::GetID(nsACString &result) {
|
||||
result.Assign([[XULAppInfo ID] UTF8String]);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP CmXULAppInfo::GetVersion(nsACString &result) {
|
||||
result.Assign([[XULAppInfo version] UTF8String]);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP CmXULAppInfo::GetAppBuildID(nsACString &result) {
|
||||
result.Assign([[XULAppInfo appBuildID] UTF8String]);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP CmXULAppInfo::GetPlatformVersion(nsACString &result) {
|
||||
result.Assign([[XULAppInfo platformVersion] UTF8String]);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP CmXULAppInfo::GetPlatformBuildID(nsACString &result) {
|
||||
result.Assign([[XULAppInfo platformBuildID] UTF8String]);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
//
|
||||
// XULAppInfo class (Objective-C)
|
||||
//
|
||||
|
||||
@implementation XULAppInfo
|
||||
|
||||
+ (NSString *)vendor {
|
||||
return @CMXULAPPDATA_VENDOR;
|
||||
}
|
||||
|
||||
+ (NSString *)name {
|
||||
// CMXULAPPDATA_NAME
|
||||
return [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleName"];
|
||||
}
|
||||
|
||||
+ (NSString *)ID {
|
||||
return @CMXULAPPDATA_ID;
|
||||
}
|
||||
|
||||
+ (NSString *)version {
|
||||
// CMXULAPPDATA_VERSION
|
||||
return [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
|
||||
}
|
||||
|
||||
+ (NSString *)appBuildID {
|
||||
return @CMXULAPPDATA_BUILD_ID;
|
||||
}
|
||||
|
||||
+ (NSString *)platformVersion {
|
||||
return @CMXULAPPDATA_PLATFORM_VERSION;
|
||||
}
|
||||
|
||||
+ (NSString *)platformBuildID {
|
||||
return @CMXULAPPDATA_PLATFORM_BUILD_ID;
|
||||
}
|
||||
|
||||
@end
|
||||
@ -45,8 +45,8 @@
|
||||
#import "UserDefaults.h"
|
||||
#import "CHBrowserService.h"
|
||||
#import "CHISupportsOwner.h"
|
||||
#import "CmXULAppInfo.h"
|
||||
|
||||
#include "nsBuildID.h"
|
||||
#include "nsString.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsWeakReference.h"
|
||||
@ -65,11 +65,6 @@
|
||||
#include "nsILocalFileMac.h"
|
||||
#include "nsINIParser.h"
|
||||
|
||||
#ifndef _BUILD_STATIC_BIN
|
||||
nsStaticModuleInfo const *const kPStaticModules = nsnull;
|
||||
PRUint32 const kStaticModuleCount = 0;
|
||||
#endif
|
||||
|
||||
#define CUSTOM_PROFILE_DIR "CAMINO_PROFILE_DIR"
|
||||
|
||||
NSString* const kPrefChangedNotificationName = @"PrefChangedNotification";
|
||||
@ -538,11 +533,14 @@ static BOOL gMadePrefManager;
|
||||
return NO;
|
||||
}
|
||||
|
||||
const char* appVersion = [[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"] UTF8String];
|
||||
nsCAutoString version;
|
||||
version.Assign(appVersion);
|
||||
version.Assign([[XULAppInfo version] UTF8String]);
|
||||
version.Append('_');
|
||||
version.Append([[XULAppInfo appBuildID] UTF8String]);
|
||||
version.Append('/');
|
||||
version.AppendLiteral(GRE_BUILD_ID);
|
||||
version.Append([[XULAppInfo platformVersion] UTF8String]);
|
||||
version.Append('_');
|
||||
version.Append([[XULAppInfo platformBuildID] UTF8String]);
|
||||
|
||||
#ifdef __ppc__
|
||||
NS_NAMED_LITERAL_CSTRING(osABI, "Darwin_ppc-gcc3");
|
||||
|
||||
@ -44,7 +44,7 @@ include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
DIRS = resources
|
||||
|
||||
CHROME_DEPS = build.dtd buildconfig.html
|
||||
CHROME_DEPS = buildconfig.html
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
@ -60,12 +60,6 @@ CHROME_PLATFORM = unix
|
||||
endif
|
||||
endif
|
||||
|
||||
GARBAGE += build.dtd
|
||||
|
||||
build.dtd: build.dtd.in $(DEPTH)/config/build_number
|
||||
@$(RM) -f $@
|
||||
$(PERL) -I$(topsrcdir)/config $(topsrcdir)/config/aboutime.pl $@ $(DEPTH)/config/build_number $(srcdir)/build.dtd.in
|
||||
|
||||
libs realchrome::
|
||||
@$(REGCHROME) locale en-US/global-platform/$(CHROME_PLATFORM) en-US.jar
|
||||
|
||||
|
||||
@ -1 +0,0 @@
|
||||
<!ENTITY buildId.label "Build ID: 0000000000">
|
||||
@ -80,7 +80,6 @@ toolkit.jar:
|
||||
content/global/aboutAbout.html (resources/content/aboutAbout.html)
|
||||
content/global/hiddenWindow.xul (resources/content/hiddenWindow.xul)
|
||||
content/global/fullScreen.js (resources/content/fullScreen.js)
|
||||
content/global/build.dtd (build.dtd)
|
||||
content/global/nsWidgetStateManager.js (resources/content/nsWidgetStateManager.js)
|
||||
#endif
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user