From eecbf4e78e34c4f9ee2fbfc96548e1a66ee0706f Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Sat, 19 Apr 2008 15:55:54 +0000 Subject: [PATCH] * Copy licenses to the image (/etc/licenses). * Whenever unzipping a zip archive to the image, we do first check, if it contains an .OptionalPackageDescription file. If so, its contents is appended to AboutSystem's "COPYRIGHTS" attribute, which will cause the respective info to be shown in the about view. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25050 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- build/jam/HaikuImage | 6 +++++ build/scripts/build_haiku_image | 41 +++++++++++++++++++++++++-------- 2 files changed, 37 insertions(+), 10 deletions(-) diff --git a/build/jam/HaikuImage b/build/jam/HaikuImage index 5aea25d760..ab148cf4ac 100644 --- a/build/jam/HaikuImage +++ b/build/jam/HaikuImage @@ -406,6 +406,11 @@ AddDirectoryToHaikuImage home config settings printers Preview AddDirectoryToHaikuImage home config settings printers "Save as PDF" : home-config-settings-printers-save-as-pdf.rdef ; +# licenses +CopyDirectoryToHaikuImage beos etc + : [ FDirName $(HAIKU_TOP) data etc licenses ] + : licenses : -x .svn ; + #pragma mark - Optional Packages @@ -456,6 +461,7 @@ AddVariableToScript $(script) : addBuildCompatibilityLibDir : $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) ; AddVariableToScript $(script) : dontClearImage : $(HAIKU_DONT_CLEAR_IMAGE) ; AddVariableToScript $(script) : updateOnly : [ IsUpdateHaikuImageOnly ] ; +AddTargetVariableToScript $(script) : addattr ; AddTargetVariableToScript $(script) : bfs_shell : bfsShell ; AddTargetVariableToScript $(script) : fs_shell_command : fsShellCommand ; AddTargetVariableToScript $(script) : copyattr ; diff --git a/build/scripts/build_haiku_image b/build/scripts/build_haiku_image index bca4e26165..d8f3bce06e 100755 --- a/build/scripts/build_haiku_image +++ b/build/scripts/build_haiku_image @@ -13,6 +13,7 @@ # dontClearImage # isVMwareImage # +# addattr # bfsShell # copyattr # fsShellCommand @@ -66,21 +67,29 @@ unzipFile() echo "Unzipping $zipFile ..." - if [ $isImage ]; then - unzipDir=$tmpDir/unzip - $rmAttrs -rf "$unzipDir" - mkdir -p "$unzipDir" + unzipDir=$tmpDir/unzip + $rmAttrs -rf "$unzipDir" + mkdir -p "$unzipDir" - $unzip -q -d "$unzipDir" "$zipFile" - $cp -r "${sPrefix}$unzipDir/." "${tPrefix}$targetUnzipDir" + $unzip -q -d "$unzipDir" "$zipFile" - $rmAttrs -rf "$unzipDir" - else - $unzip -q -o -d "${tPrefix}$targetUnzipDir" "${sPrefix}$zipFile" + if [ -f $unzipDir/.OptionalPackageDescription ]; then + cat $unzipDir/.OptionalPackageDescription >> $copyrightsFile + echo >> $copyrightsFile + rm $unzipDir/.OptionalPackageDescription fi + + $cp -r "${sPrefix}$unzipDir/." "${tPrefix}$targetUnzipDir" + + $rmAttrs -rf "$unzipDir" } +mkdir -p $tmpDir +copyrightsFile=$tmpDir/copyrights +$rmAttrs -f $copyrightsFile + + # create the image and mount it if [ $isImage ]; then echo @@ -139,7 +148,6 @@ if [ ! $updateOnly ]; then $rm -rf $mimeDBDest $mkdir -p $mimeDBDest - mkdir -p $tmpDir mimeTmpDir=$tmpDir/mime mimeDBTmpDir=$tmpDir/mime/db mimeTmpIndex=0 @@ -182,6 +190,19 @@ if [ ! $updateOnly ]; then fi # ! updateOnly +# add the concatenated copyrights as an attribute to AboutSystem + +if [ ! $updateOnly ]; then + if [ -f $copyrightsFile ]; then + copyrightAttrs=$tmpDir/copyrightAttrs + $rmAttrs -f $copyrightAttrs + touch $copyrightAttrs + $addattr -f $copyrightsFile COPYRIGHTS $copyrightAttrs + $copyAttrs ${sPrefix}$copyrightAttrs ${tPrefix}beos/apps/AboutSystem + fi +fi + + # unmount if [ $isImage ]; then echo "Unmounting ..."