diff options
| author | ruki <[email protected]> | 2020-04-05 14:32:36 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2020-04-05 14:32:36 +0800 |
| commit | 79ff6aed24ebfda2ecd4628b2237b75a003e347a (patch) | |
| tree | 7a901d3fd0400e7926b9e5ba39ce627bae640a81 | |
| parent | 903821ab225794e65e1fdee98afce2a566fe0f14 (diff) | |
improve info.plist
| -rw-r--r-- | tests/projects/objc/application/src/Info.plist | 34 | ||||
| -rw-r--r-- | tests/projects/objc/bundle/src/Info.plist | 34 | ||||
| -rw-r--r-- | tests/projects/objc/framework/src/Info.plist | 34 | ||||
| -rw-r--r-- | xmake/rules/qt/deploy/macosx.lua | 2 | ||||
| -rw-r--r-- | xmake/rules/xcode/application/xmake.lua | 20 | ||||
| -rw-r--r-- | xmake/rules/xcode/bundle/xmake.lua | 19 | ||||
| -rw-r--r-- | xmake/rules/xcode/framework/xmake.lua | 19 |
7 files changed, 79 insertions, 83 deletions
diff --git a/tests/projects/objc/application/src/Info.plist b/tests/projects/objc/application/src/Info.plist index 968bf5d3d..4bf9680cf 100644 --- a/tests/projects/objc/application/src/Info.plist +++ b/tests/projects/objc/application/src/Info.plist @@ -2,44 +2,26 @@ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> - <key>BuildMachineOSBuild</key> - <string>18G95</string> <key>CFBundleDevelopmentRegion</key> - <string>en</string> + <string>$(DEVELOPMENT_LANGUAGE)</string> <key>CFBundleExecutable</key> - <string>test</string> + <string>$(EXECUTABLE_NAME)</string> + <key>CFBundleIconFile</key> + <string></string> <key>CFBundleIdentifier</key> - <string>org.tboox.test</string> + <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> - <string>test</string> + <string>$(PRODUCT_NAME)</string> <key>CFBundlePackageType</key> - <string>APPL</string> + <string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string> <key>CFBundleShortVersionString</key> <string>1.0</string> - <key>CFBundleSupportedPlatforms</key> - <array> - <string>MacOSX</string> - </array> <key>CFBundleVersion</key> <string>1</string> - <key>DTCompiler</key> - <string>com.apple.compilers.llvm.clang.1_0</string> - <key>DTPlatformBuild</key> - <string>11B52</string> - <key>DTPlatformVersion</key> - <string>GM</string> - <key>DTSDKBuild</key> - <string>19B81</string> - <key>DTSDKName</key> - <string>macosx10.15</string> - <key>DTXcode</key> - <string>1120</string> - <key>DTXcodeBuild</key> - <string>11B52</string> <key>LSMinimumSystemVersion</key> - <string>10.14</string> + <string>$(MACOSX_DEPLOYMENT_TARGET)</string> <key>NSHumanReadableCopyright</key> <string>Copyright © 2020 tboox. All rights reserved.</string> <key>NSMainStoryboardFile</key> diff --git a/tests/projects/objc/bundle/src/Info.plist b/tests/projects/objc/bundle/src/Info.plist index 090a794fb..20608314e 100644 --- a/tests/projects/objc/bundle/src/Info.plist +++ b/tests/projects/objc/bundle/src/Info.plist @@ -2,44 +2,22 @@ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> - <key>BuildMachineOSBuild</key> - <string>18G95</string> <key>CFBundleDevelopmentRegion</key> - <string>en</string> + <string>$(DEVELOPMENT_LANGUAGE)</string> <key>CFBundleExecutable</key> - <string>test</string> + <string>$(EXECUTABLE_NAME)</string> <key>CFBundleIdentifier</key> - <string>org.tboox.test</string> + <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> - <string>test</string> + <string>$(PRODUCT_NAME)</string> <key>CFBundlePackageType</key> - <string>BNDL</string> + <string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string> <key>CFBundleShortVersionString</key> <string>1.0</string> - <key>CFBundleSupportedPlatforms</key> - <array> - <string>MacOSX</string> - </array> <key>CFBundleVersion</key> - <string>1</string> - <key>DTCompiler</key> - <string>com.apple.compilers.llvm.clang.1_0</string> - <key>DTPlatformBuild</key> - <string>11B52</string> - <key>DTPlatformVersion</key> - <string>GM</string> - <key>DTSDKBuild</key> - <string>19B81</string> - <key>DTSDKName</key> - <string>macosx10.15</string> - <key>DTXcode</key> - <string>1120</string> - <key>DTXcodeBuild</key> - <string>11B52</string> - <key>LSMinimumSystemVersion</key> - <string>10.14</string> + <string>$(CURRENT_PROJECT_VERSION)</string> <key>NSHumanReadableCopyright</key> <string>Copyright © 2020 tboox. All rights reserved.</string> </dict> diff --git a/tests/projects/objc/framework/src/Info.plist b/tests/projects/objc/framework/src/Info.plist index c3ae3d9cc..20608314e 100644 --- a/tests/projects/objc/framework/src/Info.plist +++ b/tests/projects/objc/framework/src/Info.plist @@ -2,44 +2,22 @@ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> - <key>BuildMachineOSBuild</key> - <string>18G95</string> <key>CFBundleDevelopmentRegion</key> - <string>en</string> + <string>$(DEVELOPMENT_LANGUAGE)</string> <key>CFBundleExecutable</key> - <string>test</string> + <string>$(EXECUTABLE_NAME)</string> <key>CFBundleIdentifier</key> - <string>org.tboox.test</string> + <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> - <string>test1</string> + <string>$(PRODUCT_NAME)</string> <key>CFBundlePackageType</key> - <string>FMWK</string> + <string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string> <key>CFBundleShortVersionString</key> <string>1.0</string> - <key>CFBundleSupportedPlatforms</key> - <array> - <string>MacOSX</string> - </array> <key>CFBundleVersion</key> - <string>1</string> - <key>DTCompiler</key> - <string>com.apple.compilers.llvm.clang.1_0</string> - <key>DTPlatformBuild</key> - <string>11B52</string> - <key>DTPlatformVersion</key> - <string>GM</string> - <key>DTSDKBuild</key> - <string>19B81</string> - <key>DTSDKName</key> - <string>macosx10.15</string> - <key>DTXcode</key> - <string>1120</string> - <key>DTXcodeBuild</key> - <string>11B52</string> - <key>LSMinimumSystemVersion</key> - <string>10.14</string> + <string>$(CURRENT_PROJECT_VERSION)</string> <key>NSHumanReadableCopyright</key> <string>Copyright © 2020 tboox. All rights reserved.</string> </dict> diff --git a/xmake/rules/qt/deploy/macosx.lua b/xmake/rules/qt/deploy/macosx.lua index 63c0ca1ff..818ff9943 100644 --- a/xmake/rules/qt/deploy/macosx.lua +++ b/xmake/rules/qt/deploy/macosx.lua @@ -58,7 +58,7 @@ function _save_info_plist(target, info_plist_file) <key>NSPrincipalClass</key> <string>NSApplication</string> </dict> -</plist>]], name, name, name, name, macos.version():major() .. "." .. macos.version():minor())) +</plist>]], name, name, name, name, get_config("target_minver") or (macos.version():major() .. "." .. macos.version():minor()))) end -- deploy application package for macosx diff --git a/xmake/rules/xcode/application/xmake.lua b/xmake/rules/xcode/application/xmake.lua index 756d94d6c..2378775b3 100644 --- a/xmake/rules/xcode/application/xmake.lua +++ b/xmake/rules/xcode/application/xmake.lua @@ -47,6 +47,23 @@ rule("xcode.application") -- imports import("private.tools.codesign") + -- generate Info.plist + local function _gen_info_plist(info_plist_file) + io.gsub(info_plist_file, "(%$%((.-)%))", function (_, variable) + local maps = + { + DEVELOPMENT_LANGUAGE = "en", + EXECUTABLE_NAME = target:basename(), + PRODUCT_BUNDLE_IDENTIFIER = "org.tboox." .. target:name(), + PRODUCT_NAME = target:name(), + PRODUCT_BUNDLE_PACKAGE_TYPE = "APPL", -- application + CURRENT_PROJECT_VERSION = target:version() and tostring(target:version()) or "1.0", + MACOSX_DEPLOYMENT_TARGET = get_config("target_minver") + } + return maps[variable] + end) + end + -- get app directory local appdir = path.absolute(target:data("xcode.appdir")) @@ -67,6 +84,9 @@ rule("xcode.application") local dstfile = dstfiles[i] if dstfile then os.vcp(srcfile, dstfile) + if path.filename(srcfile) == "Info.plist" then + _gen_info_plist(dstfile) + end end i = i + 1 end diff --git a/xmake/rules/xcode/bundle/xmake.lua b/xmake/rules/xcode/bundle/xmake.lua index 5911e5fff..97b2e9966 100644 --- a/xmake/rules/xcode/bundle/xmake.lua +++ b/xmake/rules/xcode/bundle/xmake.lua @@ -46,6 +46,22 @@ rule("xcode.bundle") -- imports import("private.tools.codesign") + -- generate Info.plist + local function _gen_info_plist(info_plist_file) + io.gsub(info_plist_file, "(%$%((.-)%))", function (_, variable) + local maps = + { + DEVELOPMENT_LANGUAGE = "en", + EXECUTABLE_NAME = target:basename(), + PRODUCT_BUNDLE_IDENTIFIER = "org.tboox." .. target:name(), + PRODUCT_NAME = target:name(), + PRODUCT_BUNDLE_PACKAGE_TYPE = "BNDL", -- bundle + CURRENT_PROJECT_VERSION = target:version() and tostring(target:version()) or "1.0" + } + return maps[variable] + end) + end + -- get bundle directory local bundledir = path.absolute(target:data("xcode.bundledir")) @@ -57,6 +73,9 @@ rule("xcode.bundle") local dstfile = dstfiles[i] if dstfile then os.vcp(srcfile, dstfile) + if path.filename(srcfile) == "Info.plist" then + _gen_info_plist(dstfile) + end end i = i + 1 end diff --git a/xmake/rules/xcode/framework/xmake.lua b/xmake/rules/xcode/framework/xmake.lua index 304ba0ea0..6cc5ec1c7 100644 --- a/xmake/rules/xcode/framework/xmake.lua +++ b/xmake/rules/xcode/framework/xmake.lua @@ -72,6 +72,22 @@ rule("xcode.framework") -- imports import("private.tools.codesign") + -- generate Info.plist + local function _gen_info_plist(info_plist_file) + io.gsub(info_plist_file, "(%$%((.-)%))", function (_, variable) + local maps = + { + DEVELOPMENT_LANGUAGE = "en", + EXECUTABLE_NAME = target:basename(), + PRODUCT_BUNDLE_IDENTIFIER = "org.tboox." .. target:name(), + PRODUCT_NAME = target:name(), + PRODUCT_BUNDLE_PACKAGE_TYPE = "FMWK", -- framework + CURRENT_PROJECT_VERSION = target:version() and tostring(target:version()) or "1.0" + } + return maps[variable] + end) + end + -- get framework directory local frameworkdir = path.absolute(target:data("xcode.frameworkdir")) local headersdir = path.join(frameworkdir, "Versions", "A", "Headers") @@ -90,6 +106,9 @@ rule("xcode.framework") local dstfile = dstfiles[i] if dstfile then os.vcp(srcfile, dstfile) + if path.filename(srcfile) == "Info.plist" then + _gen_info_plist(dstfile) + end end i = i + 1 end |
