diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-04-03 15:18:09 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-10-20 14:59:55 +0200 |
commit | 23d6e507d63713c6e0162751f8602bd9b8d6e6d1 (patch) | |
tree | 52628b80d0c7f6c8cc2a03b17744c3b854d75243 | |
parent | scripts: Generalize names (diff) | |
download | rtems-libbsd-23d6e507d63713c6e0162751f8602bd9b8d6e6d1.tar.bz2 |
scripts: Support Linux import
-rwxr-xr-x | builder.py | 39 | ||||
-rwxr-xr-x | freebsd-to-rtems.py | 4 |
2 files changed, 42 insertions, 1 deletions
@@ -50,6 +50,7 @@ import codecs # LIBBSD_DIR = "." FreeBSD_DIR = "freebsd-org" +Linux_DIR = "linux-org" verboseLevel = 0 isDryRun = False isDiffMode = False @@ -544,12 +545,25 @@ class RTEMSPathComposer(PathComposer): def composeLibBSDPath(self, path, prefix): 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): def composeLibBSDPath(self, path, prefix): path = super(CPUDependentFreeBSDPathComposer, self).composeLibBSDPath(path, prefix) path = mapCPUDependentPath(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): def __init__(self, targetCPU, sourceCPU): self.targetCPU = targetCPU @@ -661,11 +675,21 @@ class Module: self.files += self.addFiles(files, RTEMSPathComposer(), NoConverter(), NoConverter(), assertHeaderFile) + def addLinuxHeaderFiles(self, files): + self.files += self.addFiles(files, + LinuxPathComposer(), FromFreeBSDToRTEMSHeaderConverter(), + FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile) + def addCPUDependentFreeBSDHeaderFiles(self, files): self.files += self.addFiles(files, CPUDependentFreeBSDPathComposer(), FromFreeBSDToRTEMSHeaderConverter(), FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile) + def addCPUDependentLinuxHeaderFiles(self, files): + self.files += self.addFiles(files, + CPUDependentLinuxPathComposer(), FromFreeBSDToRTEMSHeaderConverter(), + FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile) + def addTargetSourceCPUDependentHeaderFiles(self, targetCPUs, sourceCPU, files): for cpu in targetCPUs: self.files += self.addFiles(files, @@ -696,6 +720,12 @@ class Module: RTEMSPathComposer(), NoConverter(), NoConverter(), assertSourceFile, sourceFileFragmentComposer) + def addLinuxSourceFiles(self, files, sourceFileFragmentComposer): + self.files += self.addFiles(files, + LinuxPathComposer(), FromFreeBSDToRTEMSSourceConverter(), + FromRTEMSToFreeBSDSourceConverter(), assertSourceFile, + sourceFileFragmentComposer) + def addCPUDependentFreeBSDSourceFiles(self, cpus, files, sourceFileFragmentComposer): for cpu in cpus: self.initCPUDependencies(cpu) @@ -705,6 +735,15 @@ class Module: FromRTEMSToFreeBSDSourceConverter(), assertSourceFile, 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): self.files += [File(testFragementComposer.testName, PathComposer(), NoConverter(), NoConverter(), diff --git a/freebsd-to-rtems.py b/freebsd-to-rtems.py index 443fa833..418c6c76 100755 --- a/freebsd-to-rtems.py +++ b/freebsd-to-rtems.py @@ -122,6 +122,7 @@ print("Diff Mode Enabled: %s" % (("no", "yes")[builder.isDiffMode])) print("Only Generate Build Scripts: %s" % (("no", "yes")[isOnlyBuildScripts])) print("LibBSD Directory: %s" % (builder.LIBBSD_DIR)) print("FreeBSD Directory: %s" % (builder.FreeBSD_DIR)) +print("Linux Directory: %s" % (builder.Linux_DIR)) print("Direction: %s" % (("reverse", "forward")[isForward])) # Check directory argument was set and exist @@ -137,10 +138,11 @@ def wasDirectorySet(desc, path): # Were directories specified? wasDirectorySet( "LibBSD", builder.LIBBSD_DIR ) wasDirectorySet( "FreeBSD", builder.FreeBSD_DIR ) +wasDirectorySet( "Linux", builder.Linux_DIR ) # Are we generating or reverting? 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: print("Reverting from", builder.LIBBSD_DIR) if isOnlyBuildScripts == True: |