Author: mmadia Date: 2010-04-28 15:38:49 +0200 (Wed, 28 Apr 2010) New Revision: 36517 Changeset: http://dev.haiku-os.org/changeset/36517/haiku Modified: haiku/trunk/build/jam/ImageRules haiku/trunk/src/apps/installer/CopyEngine.cpp haiku/trunk/src/apps/installer/InstallerWindow.h Log: InstallSourceArchive now copies source archives to _sources_/, which in turn is ignored by Installer. Automatic whitespace cleanup. Modified: haiku/trunk/build/jam/ImageRules =================================================================== --- haiku/trunk/build/jam/ImageRules 2010-04-28 13:37:27 UTC (rev 36516) +++ haiku/trunk/build/jam/ImageRules 2010-04-28 13:38:49 UTC (rev 36517) @@ -814,7 +814,7 @@ local archiveFile = [ DownloadFile $(file) : $(url) ] ; # copy directly into image - AddFilesToHaikuImage develop sources : $(archiveFile) ; + AddFilesToHaikuImage _sources_ : $(archiveFile) ; } } @@ -837,7 +837,7 @@ #} } else { # extract onto image - ExtractArchiveToHaikuImage $(dirTokens) : $(archiveFile) : : + ExtractArchiveToHaikuImage $(dirTokens) : $(archiveFile) : : : $(isGCCAgnostic) ; } } Modified: haiku/trunk/src/apps/installer/CopyEngine.cpp =================================================================== --- haiku/trunk/src/apps/installer/CopyEngine.cpp 2010-04-28 13:37:27 UTC (rev 36516) +++ haiku/trunk/src/apps/installer/CopyEngine.cpp 2010-04-28 13:38:49 UTC (rev 36517) @@ -98,7 +98,7 @@ fCurrentTargetFolder = NULL; fCurrentItem = NULL; - + // init BEntry pointing to /var // There is no other way to retrieve the path to the var folder // on the source volume. Using find_directory() with @@ -107,7 +107,8 @@ // makes sense, since passing a volume is meant to folders that are // volume specific, like "trash". BPath path(source); - if (path.Append("common/var") == B_OK) + if ((path.Append("common/var") == B_OK) + || (path.Append("_sources_") == B_OK)) fVarDirectory.SetTo(path.Path()); else fVarDirectory.Unset(); @@ -516,6 +517,10 @@ printf("ignoring '%s'.\n", name); return false; } + if (strcmp(SOURCES_DIRECTORY, name) == 0) { + printf("ignoring '%s'.\n", name); + return false; + } if (strcmp("rr_moved", name) == 0) { printf("ignoring '%s'.\n", name); return false; Modified: haiku/trunk/src/apps/installer/InstallerWindow.h =================================================================== --- haiku/trunk/src/apps/installer/InstallerWindow.h 2010-04-28 13:37:27 UTC (rev 36516) +++ haiku/trunk/src/apps/installer/InstallerWindow.h 2010-04-28 13:38:49 UTC (rev 36517) @@ -38,6 +38,7 @@ const uint32 MSG_WRITE_BOOT_SECTOR = 'iWBS'; const char PACKAGES_DIRECTORY[] = "_packages_"; +const char SOURCES_DIRECTORY[] = "_sources_"; const char VAR_DIRECTORY[] = "var";