As per Ingo's comment 13 in #7286, removed support for isGCCAgnostic.
There should be separate gcc 2 and gcc 4 packages instead. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40827 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -25,8 +25,6 @@ AddVariableToScript $(script) : sourceDir : $(HAIKU_TOP) ;
|
|||||||
AddVariableToScript $(script) : outputDir : $(HAIKU_OUTPUT_DIR) ;
|
AddVariableToScript $(script) : outputDir : $(HAIKU_OUTPUT_DIR) ;
|
||||||
AddVariableToScript $(script) : tmpDir : $(HAIKU_TMP_DIR) ;
|
AddVariableToScript $(script) : tmpDir : $(HAIKU_TMP_DIR) ;
|
||||||
AddVariableToScript $(script) : isCD : 1 ;
|
AddVariableToScript $(script) : isCD : 1 ;
|
||||||
AddVariableToScript $(script) : gccVersion : $(HAIKU_GCC_VERSION[1]) ;
|
|
||||||
AddVariableToScript $(script) : isHybridBuild : $(isHybridBuild) ;
|
|
||||||
AddVariableToScript $(script) : cdLabel : $(HAIKU_CD_LABEL) ;
|
AddVariableToScript $(script) : cdLabel : $(HAIKU_CD_LABEL) ;
|
||||||
AddVariableToScript $(script) : addBuildCompatibilityLibDir
|
AddVariableToScript $(script) : addBuildCompatibilityLibDir
|
||||||
: $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) ;
|
: $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) ;
|
||||||
|
|||||||
@@ -771,8 +771,6 @@ AddVariableToScript $(script) : outputDir : $(HAIKU_OUTPUT_DIR) ;
|
|||||||
AddVariableToScript $(script) : tmpDir : $(HAIKU_TMP_DIR) ;
|
AddVariableToScript $(script) : tmpDir : $(HAIKU_TMP_DIR) ;
|
||||||
AddVariableToScript $(script) : installDir : $(HAIKU_INSTALL_DIR) ;
|
AddVariableToScript $(script) : installDir : $(HAIKU_INSTALL_DIR) ;
|
||||||
#AddVariableToScript $(script) : isImage : 1 ;
|
#AddVariableToScript $(script) : isImage : 1 ;
|
||||||
AddVariableToScript $(script) : gccVersion : $(HAIKU_GCC_VERSION[1]) ;
|
|
||||||
AddVariableToScript $(script) : isHybridBuild : $(isHybridBuild) ;
|
|
||||||
AddVariableToScript $(script) : imageSize : $(HAIKU_IMAGE_SIZE) ;
|
AddVariableToScript $(script) : imageSize : $(HAIKU_IMAGE_SIZE) ;
|
||||||
AddVariableToScript $(script) : imageLabel : $(HAIKU_IMAGE_LABEL) ;
|
AddVariableToScript $(script) : imageLabel : $(HAIKU_IMAGE_LABEL) ;
|
||||||
AddVariableToScript $(script) : addBuildCompatibilityLibDir
|
AddVariableToScript $(script) : addBuildCompatibilityLibDir
|
||||||
|
|||||||
+7
-22
@@ -283,17 +283,16 @@ rule CopyDirectoryToContainer container : directoryTokens : sourceDirectory
|
|||||||
}
|
}
|
||||||
|
|
||||||
rule ExtractArchiveToContainer container : directoryTokens : archiveFile
|
rule ExtractArchiveToContainer container : directoryTokens : archiveFile
|
||||||
: extractedSubDir : isGCCAgnostic
|
: extractedSubDir
|
||||||
{
|
{
|
||||||
# ExtractArchiveToContainer <container> : <directory> : <archiveFile>
|
# ExtractArchiveToContainer <container> : <directory> : <archiveFile>
|
||||||
# : <extractedSubDir> : <isGCCAgnostic> ;
|
# : <extractedSubDir> ;
|
||||||
|
|
||||||
local directory = [ AddDirectoryToContainer $(container)
|
local directory = [ AddDirectoryToContainer $(container)
|
||||||
: $(directoryTokens) ] ;
|
: $(directoryTokens) ] ;
|
||||||
|
|
||||||
ARCHIVE_FILES_TO_INSTALL on $(directory) += $(archiveFile) ;
|
ARCHIVE_FILES_TO_INSTALL on $(directory) += $(archiveFile) ;
|
||||||
ARCHIVE_SUBDIR_TO_INSTALL_FROM on $(archiveFile) = $(extractedSubDir) ;
|
ARCHIVE_SUBDIR_TO_INSTALL_FROM on $(archiveFile) = $(extractedSubDir) ;
|
||||||
ARCHIVE_IS_GCC_AGNOSTIC on $(archiveFile) = $(isGCCAgnostic) ;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
rule AddDriversToContainer container : relativeDirectoryTokens : targets
|
rule AddDriversToContainer container : relativeDirectoryTokens : targets
|
||||||
@@ -608,11 +607,6 @@ rule CreateContainerExtractFilesScript container : script
|
|||||||
ARCHIVE_SUBDIR_TO_INSTALL_FROM on $(dummyTarget) =
|
ARCHIVE_SUBDIR_TO_INSTALL_FROM on $(dummyTarget) =
|
||||||
$(extractedSubDir:E=.) ;
|
$(extractedSubDir:E=.) ;
|
||||||
|
|
||||||
local isGCCAgnostic = [ on $(archiveFile)
|
|
||||||
return $(ARCHIVE_IS_GCC_AGNOSTIC) ] ;
|
|
||||||
ARCHIVE_IS_GCC_AGNOSTIC on $(dummyTarget) =
|
|
||||||
$(isGCCAgnostic:E=false) ;
|
|
||||||
|
|
||||||
Depends $(dummyTarget) : $(initScript) $(archiveFile)
|
Depends $(dummyTarget) : $(initScript) $(archiveFile)
|
||||||
$(serializationDependency) ;
|
$(serializationDependency) ;
|
||||||
Depends $(script) : $(dummyTarget) ;
|
Depends $(script) : $(dummyTarget) ;
|
||||||
@@ -628,8 +622,7 @@ rule CreateContainerExtractFilesScript container : script
|
|||||||
actions AddExtractFileToContainerExtractFilesScript
|
actions AddExtractFileToContainerExtractFilesScript
|
||||||
{
|
{
|
||||||
echo extractFile "\"$(2[2])\"" "\"$(TARGET_DIR)\"" \
|
echo extractFile "\"$(2[2])\"" "\"$(TARGET_DIR)\"" \
|
||||||
"\"$(ARCHIVE_SUBDIR_TO_INSTALL_FROM)\"" \
|
"\"$(ARCHIVE_SUBDIR_TO_INSTALL_FROM)\"" >> $(2[1])
|
||||||
"\"$(ARCHIVE_IS_GCC_AGNOSTIC)\"" >> $(2[1])
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -734,16 +727,16 @@ rule AddWifiFirmwareToHaikuImage driver : package : archive : extract
|
|||||||
}
|
}
|
||||||
|
|
||||||
rule ExtractArchiveToHaikuImage dirTokens : archiveFile : alwaysUpdate
|
rule ExtractArchiveToHaikuImage dirTokens : archiveFile : alwaysUpdate
|
||||||
: extractedSubDir : isGCCAgnostic
|
: extractedSubDir
|
||||||
{
|
{
|
||||||
# ExtractArchiveToHaikuImage <dirTokens> : <archiveFile> : <alwaysUpdate>
|
# ExtractArchiveToHaikuImage <dirTokens> : <archiveFile> : <alwaysUpdate>
|
||||||
# : <extractedSubDir> : <isGCCAgnostic> ;
|
# : <extractedSubDir> ;
|
||||||
|
|
||||||
# If the image shall only be updated, we extract only, if explicitely
|
# If the image shall only be updated, we extract only, if explicitely
|
||||||
# requested.
|
# requested.
|
||||||
if ! [ IsUpdateHaikuImageOnly ] || $(alwaysUpdate) {
|
if ! [ IsUpdateHaikuImageOnly ] || $(alwaysUpdate) {
|
||||||
ExtractArchiveToContainer $(HAIKU_IMAGE_CONTAINER_NAME) : $(dirTokens)
|
ExtractArchiveToContainer $(HAIKU_IMAGE_CONTAINER_NAME) : $(dirTokens)
|
||||||
: $(archiveFile) : $(extractedSubDir) : $(isGCCAgnostic) ;
|
: $(archiveFile) : $(extractedSubDir) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -830,7 +823,6 @@ rule InstallSourceArchive file : url
|
|||||||
}
|
}
|
||||||
|
|
||||||
rule InstallOptionalHaikuImagePackage package : url : dirTokens : isCDPackage
|
rule InstallOptionalHaikuImagePackage package : url : dirTokens : isCDPackage
|
||||||
: isGCCAgnostic
|
|
||||||
{
|
{
|
||||||
# download archive file
|
# download archive file
|
||||||
local archiveFile = [ DownloadFile $(package) : $(url) ] ;
|
local archiveFile = [ DownloadFile $(package) : $(url) ] ;
|
||||||
@@ -840,16 +832,9 @@ rule InstallOptionalHaikuImagePackage package : url : dirTokens : isCDPackage
|
|||||||
# image!
|
# image!
|
||||||
# copy onto image
|
# copy onto image
|
||||||
AddFilesToHaikuImage _packages_ : $(archiveFile) ;
|
AddFilesToHaikuImage _packages_ : $(archiveFile) ;
|
||||||
#if $(isGCCAgnostic) {
|
|
||||||
# TODO: The archives would need to be marked whether they are
|
|
||||||
# gcc-agnostic (e.g. via attribute). Installer's UnzipEngine would
|
|
||||||
# also need to be updated, to read this attribute and create the
|
|
||||||
# alt gcc dir and symlinks as needed.
|
|
||||||
#}
|
|
||||||
} else {
|
} else {
|
||||||
# extract onto image
|
# extract onto image
|
||||||
ExtractArchiveToHaikuImage $(dirTokens) : $(archiveFile) : :
|
ExtractArchiveToHaikuImage $(dirTokens) : $(archiveFile) ;
|
||||||
: $(isGCCAgnostic) ;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,8 +6,6 @@ set -o errexit
|
|||||||
# outputDir
|
# outputDir
|
||||||
# tmpDir
|
# tmpDir
|
||||||
# addBuildCompatibilityLibDir
|
# addBuildCompatibilityLibDir
|
||||||
# gccVersion
|
|
||||||
# isHybridBuild
|
|
||||||
# The following are only for image types:
|
# The following are only for image types:
|
||||||
# installDir
|
# installDir
|
||||||
# isImage
|
# isImage
|
||||||
@@ -149,7 +147,6 @@ extractFile()
|
|||||||
archiveFile=$1
|
archiveFile=$1
|
||||||
targetExtractedDir=$2
|
targetExtractedDir=$2
|
||||||
extractedSubDir=$3
|
extractedSubDir=$3
|
||||||
isGCCAgnostic=$4
|
|
||||||
|
|
||||||
echo "Extracting $archiveFile ..."
|
echo "Extracting $archiveFile ..."
|
||||||
|
|
||||||
@@ -176,63 +173,12 @@ extractFile()
|
|||||||
rm $extractDir/.OptionalPackageDescription
|
rm $extractDir/.OptionalPackageDescription
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$isGCCAgnostic" = "true" ] && [ $isHybridBuild ] ; then
|
|
||||||
extractedLibs=`find "$extractDir/$extractedSubDir/" -name "*.so"`
|
|
||||||
moreExtractedLibs=`find "$extractDir/$extractedSubDir/" -name "*.so.*"`
|
|
||||||
staticLibs=`find "$extractDir/$extractedSubDir/" -name "*.a"`
|
|
||||||
#NOTE: should we symlink libtool's *.la files?
|
|
||||||
#laLibs=`find "$extractDir/$extractedSubDir/" -name "*.la"`
|
|
||||||
createSymlinksForHybrid $extractedLibs $moreExtractedLibs $staticLibs
|
|
||||||
fi
|
|
||||||
|
|
||||||
$cp -r "${sPrefix}$extractDir/$extractedSubDir/." "${tPrefix}$targetExtractedDir"
|
$cp -r "${sPrefix}$extractDir/$extractedSubDir/." "${tPrefix}$targetExtractedDir"
|
||||||
|
|
||||||
$rmAttrs -rf "$extractDir"
|
$rmAttrs -rf "$extractDir"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
createSymlinksForHybrid()
|
|
||||||
{
|
|
||||||
# createSymlinksForHybrid <libraries>
|
|
||||||
|
|
||||||
# Determine the alternative gcc subdir.
|
|
||||||
if [ $gccVersion -eq 2 ]; then
|
|
||||||
gccAltDir=gcc4
|
|
||||||
else
|
|
||||||
gccAltDir=gcc2
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Iterate over the library file paths that were passed in.
|
|
||||||
for srcPathLib in $@; do
|
|
||||||
# determine the relative path of the library
|
|
||||||
relPathLib=`echo $srcPathLib | \
|
|
||||||
sed -e "s:${extractDir}/${extractedSubDir}/::"`
|
|
||||||
relPath=`dirname $relPathLib`
|
|
||||||
|
|
||||||
# check if that relative path is one of the standard library paths
|
|
||||||
standardLibPaths="system/lib common/lib home/config/lib"
|
|
||||||
isStandardPath=
|
|
||||||
for stdLibPath in $standardLibPaths; do
|
|
||||||
if [ "$relPath" = "$stdLibPath" ]; then
|
|
||||||
isStandardPath=true
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# create alt gcc symlinks for libs inside standard paths
|
|
||||||
if [ $isStandardPath ]; then
|
|
||||||
srcPath=`dirname $srcPathLib`
|
|
||||||
srcLib=`basename $srcPathLib`
|
|
||||||
destLinkDir="${srcPath}/${gccAltDir}"
|
|
||||||
destLinkTarget="../$srcLib"
|
|
||||||
|
|
||||||
mkdir -p $destLinkDir
|
|
||||||
ln -sf $destLinkTarget $destLinkDir
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
mkdir -p $tmpDir
|
mkdir -p $tmpDir
|
||||||
copyrightsFile=$tmpDir/copyrights
|
copyrightsFile=$tmpDir/copyrights
|
||||||
$rmAttrs -f $copyrightsFile
|
$rmAttrs -f $copyrightsFile
|
||||||
|
|||||||
Reference in New Issue
Block a user