mirror of
https://git.rtems.org/rtems-libbsd/
synced 2025-07-25 06:34:06 +08:00
scripts: Support Linux import
This commit is contained in:
parent
fa4ec51293
commit
23d6e507d6
39
builder.py
39
builder.py
@ -50,6 +50,7 @@ import codecs
|
|||||||
#
|
#
|
||||||
LIBBSD_DIR = "."
|
LIBBSD_DIR = "."
|
||||||
FreeBSD_DIR = "freebsd-org"
|
FreeBSD_DIR = "freebsd-org"
|
||||||
|
Linux_DIR = "linux-org"
|
||||||
verboseLevel = 0
|
verboseLevel = 0
|
||||||
isDryRun = False
|
isDryRun = False
|
||||||
isDiffMode = False
|
isDiffMode = False
|
||||||
@ -544,12 +545,25 @@ class RTEMSPathComposer(PathComposer):
|
|||||||
def composeLibBSDPath(self, path, prefix):
|
def composeLibBSDPath(self, path, prefix):
|
||||||
return os.path.join(prefix, 'rtemsbsd', path)
|
return os.path.join(prefix, 'rtemsbsd', path)
|
||||||
|
|
||||||
|
class LinuxPathComposer(PathComposer):
|
||||||
|
def composeOriginPath(self, path):
|
||||||
|
return os.path.join(Linux_DIR, path)
|
||||||
|
|
||||||
|
def composeLibBSDPath(self, path, prefix):
|
||||||
|
return os.path.join(prefix, 'linux', path)
|
||||||
|
|
||||||
class CPUDependentFreeBSDPathComposer(FreeBSDPathComposer):
|
class CPUDependentFreeBSDPathComposer(FreeBSDPathComposer):
|
||||||
def composeLibBSDPath(self, path, prefix):
|
def composeLibBSDPath(self, path, prefix):
|
||||||
path = super(CPUDependentFreeBSDPathComposer, self).composeLibBSDPath(path, prefix)
|
path = super(CPUDependentFreeBSDPathComposer, self).composeLibBSDPath(path, prefix)
|
||||||
path = mapCPUDependentPath(path)
|
path = mapCPUDependentPath(path)
|
||||||
return path
|
return path
|
||||||
|
|
||||||
|
class CPUDependentLinuxPathComposer(LinuxPathComposer):
|
||||||
|
def composeLibBSDPath(self, path, prefix):
|
||||||
|
path = super(CPUDependentLinuxPathComposer, self).composeLibBSDPath(path, prefix)
|
||||||
|
path = mapCPUDependentPath(path)
|
||||||
|
return path
|
||||||
|
|
||||||
class TargetSourceCPUDependentPathComposer(CPUDependentFreeBSDPathComposer):
|
class TargetSourceCPUDependentPathComposer(CPUDependentFreeBSDPathComposer):
|
||||||
def __init__(self, targetCPU, sourceCPU):
|
def __init__(self, targetCPU, sourceCPU):
|
||||||
self.targetCPU = targetCPU
|
self.targetCPU = targetCPU
|
||||||
@ -661,11 +675,21 @@ class Module:
|
|||||||
self.files += self.addFiles(files, RTEMSPathComposer(),
|
self.files += self.addFiles(files, RTEMSPathComposer(),
|
||||||
NoConverter(), NoConverter(), assertHeaderFile)
|
NoConverter(), NoConverter(), assertHeaderFile)
|
||||||
|
|
||||||
|
def addLinuxHeaderFiles(self, files):
|
||||||
|
self.files += self.addFiles(files,
|
||||||
|
LinuxPathComposer(), FromFreeBSDToRTEMSHeaderConverter(),
|
||||||
|
FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile)
|
||||||
|
|
||||||
def addCPUDependentFreeBSDHeaderFiles(self, files):
|
def addCPUDependentFreeBSDHeaderFiles(self, files):
|
||||||
self.files += self.addFiles(files,
|
self.files += self.addFiles(files,
|
||||||
CPUDependentFreeBSDPathComposer(), FromFreeBSDToRTEMSHeaderConverter(),
|
CPUDependentFreeBSDPathComposer(), FromFreeBSDToRTEMSHeaderConverter(),
|
||||||
FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile)
|
FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile)
|
||||||
|
|
||||||
|
def addCPUDependentLinuxHeaderFiles(self, files):
|
||||||
|
self.files += self.addFiles(files,
|
||||||
|
CPUDependentLinuxPathComposer(), FromFreeBSDToRTEMSHeaderConverter(),
|
||||||
|
FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile)
|
||||||
|
|
||||||
def addTargetSourceCPUDependentHeaderFiles(self, targetCPUs, sourceCPU, files):
|
def addTargetSourceCPUDependentHeaderFiles(self, targetCPUs, sourceCPU, files):
|
||||||
for cpu in targetCPUs:
|
for cpu in targetCPUs:
|
||||||
self.files += self.addFiles(files,
|
self.files += self.addFiles(files,
|
||||||
@ -696,6 +720,12 @@ class Module:
|
|||||||
RTEMSPathComposer(), NoConverter(), NoConverter(),
|
RTEMSPathComposer(), NoConverter(), NoConverter(),
|
||||||
assertSourceFile, sourceFileFragmentComposer)
|
assertSourceFile, sourceFileFragmentComposer)
|
||||||
|
|
||||||
|
def addLinuxSourceFiles(self, files, sourceFileFragmentComposer):
|
||||||
|
self.files += self.addFiles(files,
|
||||||
|
LinuxPathComposer(), FromFreeBSDToRTEMSSourceConverter(),
|
||||||
|
FromRTEMSToFreeBSDSourceConverter(), assertSourceFile,
|
||||||
|
sourceFileFragmentComposer)
|
||||||
|
|
||||||
def addCPUDependentFreeBSDSourceFiles(self, cpus, files, sourceFileFragmentComposer):
|
def addCPUDependentFreeBSDSourceFiles(self, cpus, files, sourceFileFragmentComposer):
|
||||||
for cpu in cpus:
|
for cpu in cpus:
|
||||||
self.initCPUDependencies(cpu)
|
self.initCPUDependencies(cpu)
|
||||||
@ -705,6 +735,15 @@ class Module:
|
|||||||
FromRTEMSToFreeBSDSourceConverter(), assertSourceFile,
|
FromRTEMSToFreeBSDSourceConverter(), assertSourceFile,
|
||||||
sourceFileFragmentComposer)
|
sourceFileFragmentComposer)
|
||||||
|
|
||||||
|
def addCPUDependentLinuxSourceFiles(self, cpus, files, sourceFileFragmentComposer):
|
||||||
|
for cpu in cpus:
|
||||||
|
self.initCPUDependencies(cpu)
|
||||||
|
self.cpuDependentSourceFiles[cpu] += \
|
||||||
|
self.addFiles(files,
|
||||||
|
CPUDependentLinuxPathComposer(), FromFreeBSDToRTEMSSourceConverter(),
|
||||||
|
FromRTEMSToFreeBSDSourceConverter(), assertSourceFile,
|
||||||
|
sourceFileFragmentComposer)
|
||||||
|
|
||||||
def addTest(self, testFragementComposer):
|
def addTest(self, testFragementComposer):
|
||||||
self.files += [File(testFragementComposer.testName,
|
self.files += [File(testFragementComposer.testName,
|
||||||
PathComposer(), NoConverter(), NoConverter(),
|
PathComposer(), NoConverter(), NoConverter(),
|
||||||
|
@ -122,6 +122,7 @@ print("Diff Mode Enabled: %s" % (("no", "yes")[builder.isDiffMode]))
|
|||||||
print("Only Generate Build Scripts: %s" % (("no", "yes")[isOnlyBuildScripts]))
|
print("Only Generate Build Scripts: %s" % (("no", "yes")[isOnlyBuildScripts]))
|
||||||
print("LibBSD Directory: %s" % (builder.LIBBSD_DIR))
|
print("LibBSD Directory: %s" % (builder.LIBBSD_DIR))
|
||||||
print("FreeBSD Directory: %s" % (builder.FreeBSD_DIR))
|
print("FreeBSD Directory: %s" % (builder.FreeBSD_DIR))
|
||||||
|
print("Linux Directory: %s" % (builder.Linux_DIR))
|
||||||
print("Direction: %s" % (("reverse", "forward")[isForward]))
|
print("Direction: %s" % (("reverse", "forward")[isForward]))
|
||||||
|
|
||||||
# Check directory argument was set and exist
|
# Check directory argument was set and exist
|
||||||
@ -137,10 +138,11 @@ def wasDirectorySet(desc, path):
|
|||||||
# Were directories specified?
|
# Were directories specified?
|
||||||
wasDirectorySet( "LibBSD", builder.LIBBSD_DIR )
|
wasDirectorySet( "LibBSD", builder.LIBBSD_DIR )
|
||||||
wasDirectorySet( "FreeBSD", builder.FreeBSD_DIR )
|
wasDirectorySet( "FreeBSD", builder.FreeBSD_DIR )
|
||||||
|
wasDirectorySet( "Linux", builder.Linux_DIR )
|
||||||
|
|
||||||
# Are we generating or reverting?
|
# Are we generating or reverting?
|
||||||
if isForward == True:
|
if isForward == True:
|
||||||
print("Forward from", builder.FreeBSD_DIR, "into", builder.LIBBSD_DIR)
|
print("Forward from", builder.FreeBSD_DIR, "and", builder.Linux_DIR, "into", builder.LIBBSD_DIR)
|
||||||
else:
|
else:
|
||||||
print("Reverting from", builder.LIBBSD_DIR)
|
print("Reverting from", builder.LIBBSD_DIR)
|
||||||
if isOnlyBuildScripts == True:
|
if isOnlyBuildScripts == True:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user