mirror of
https://git.rtems.org/rtems-libbsd/
synced 2025-10-14 20:19:28 +08:00
scripts: Generalize names
This commit is contained in:
56
builder.py
56
builder.py
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2015-2016 Chris Johns <chrisj@rtems.org>. All rights reserved.
|
# Copyright (c) 2015-2016 Chris Johns <chrisj@rtems.org>. All rights reserved.
|
||||||
#
|
#
|
||||||
# Copyright (c) 2009-2015 embedded brains GmbH. All rights reserved.
|
# Copyright (c) 2009, 2017 embedded brains GmbH. All rights reserved.
|
||||||
#
|
#
|
||||||
# embedded brains GmbH
|
# embedded brains GmbH
|
||||||
# Dornierstr. 4
|
# Dornierstr. 4
|
||||||
@@ -48,7 +48,7 @@ import codecs
|
|||||||
#
|
#
|
||||||
# Global controls.
|
# Global controls.
|
||||||
#
|
#
|
||||||
RTEMS_DIR = "."
|
LIBBSD_DIR = "."
|
||||||
FreeBSD_DIR = "freebsd-org"
|
FreeBSD_DIR = "freebsd-org"
|
||||||
verboseLevel = 0
|
verboseLevel = 0
|
||||||
isDryRun = False
|
isDryRun = False
|
||||||
@@ -524,39 +524,39 @@ class FromRTEMSToFreeBSDSourceConverter(Converter):
|
|||||||
# Compose a path based for the various parts of the source tree.
|
# Compose a path based for the various parts of the source tree.
|
||||||
#
|
#
|
||||||
class PathComposer(object):
|
class PathComposer(object):
|
||||||
def composeFreeBSDPath(self, path):
|
def composeOriginPath(self, path):
|
||||||
return path
|
return path
|
||||||
|
|
||||||
def composeRTEMSPath(self, path, prefix):
|
def composeLibBSDPath(self, path, prefix):
|
||||||
return os.path.join(prefix, path)
|
return os.path.join(prefix, path)
|
||||||
|
|
||||||
class FreeBSDPathComposer(PathComposer):
|
class FreeBSDPathComposer(PathComposer):
|
||||||
def composeFreeBSDPath(self, path):
|
def composeOriginPath(self, path):
|
||||||
return os.path.join(FreeBSD_DIR, path)
|
return os.path.join(FreeBSD_DIR, path)
|
||||||
|
|
||||||
def composeRTEMSPath(self, path, prefix):
|
def composeLibBSDPath(self, path, prefix):
|
||||||
return os.path.join(prefix, 'freebsd', path)
|
return os.path.join(prefix, 'freebsd', path)
|
||||||
|
|
||||||
class RTEMSPathComposer(PathComposer):
|
class RTEMSPathComposer(PathComposer):
|
||||||
def composeFreeBSDPath(self, path):
|
def composeOriginPath(self, path):
|
||||||
return path
|
return path
|
||||||
|
|
||||||
def composeRTEMSPath(self, path, prefix):
|
def composeLibBSDPath(self, path, prefix):
|
||||||
return os.path.join(prefix, 'rtemsbsd', path)
|
return os.path.join(prefix, 'rtemsbsd', path)
|
||||||
|
|
||||||
class CPUDependentPathComposer(FreeBSDPathComposer):
|
class CPUDependentFreeBSDPathComposer(FreeBSDPathComposer):
|
||||||
def composeRTEMSPath(self, path, prefix):
|
def composeLibBSDPath(self, path, prefix):
|
||||||
path = super(CPUDependentPathComposer, self).composeRTEMSPath(path, prefix)
|
path = super(CPUDependentFreeBSDPathComposer, self).composeLibBSDPath(path, prefix)
|
||||||
path = mapCPUDependentPath(path)
|
path = mapCPUDependentPath(path)
|
||||||
return path
|
return path
|
||||||
|
|
||||||
class TargetSourceCPUDependentPathComposer(CPUDependentPathComposer):
|
class TargetSourceCPUDependentPathComposer(CPUDependentFreeBSDPathComposer):
|
||||||
def __init__(self, targetCPU, sourceCPU):
|
def __init__(self, targetCPU, sourceCPU):
|
||||||
self.targetCPU = targetCPU
|
self.targetCPU = targetCPU
|
||||||
self.sourceCPU = sourceCPU
|
self.sourceCPU = sourceCPU
|
||||||
|
|
||||||
def composeRTEMSPath(self, path, prefix):
|
def composeLibBSDPath(self, path, prefix):
|
||||||
path = super(TargetSourceCPUDependentPathComposer, self).composeRTEMSPath(path, prefix)
|
path = super(TargetSourceCPUDependentPathComposer, self).composeLibBSDPath(path, prefix)
|
||||||
path = path.replace(self.sourceCPU, self.targetCPU)
|
path = path.replace(self.sourceCPU, self.targetCPU)
|
||||||
return path
|
return path
|
||||||
|
|
||||||
@@ -583,8 +583,8 @@ class File(object):
|
|||||||
reverseConverter.__class__.__name__))
|
reverseConverter.__class__.__name__))
|
||||||
self.path = path
|
self.path = path
|
||||||
self.pathComposer = pathComposer
|
self.pathComposer = pathComposer
|
||||||
self.freebsdPath = self.pathComposer.composeFreeBSDPath(self.path)
|
self.originPath = self.pathComposer.composeOriginPath(self.path)
|
||||||
self.rtemsPath = self.pathComposer.composeRTEMSPath(self.path, RTEMS_DIR)
|
self.libbsdPath = self.pathComposer.composeLibBSDPath(self.path, LIBBSD_DIR)
|
||||||
self.forwardConverter = forwardConverter
|
self.forwardConverter = forwardConverter
|
||||||
self.reverseConverter = reverseConverter
|
self.reverseConverter = reverseConverter
|
||||||
self.buildSystemComposer = buildSystemComposer
|
self.buildSystemComposer = buildSystemComposer
|
||||||
@@ -592,16 +592,16 @@ class File(object):
|
|||||||
def processSource(self, forward):
|
def processSource(self, forward):
|
||||||
if forward:
|
if forward:
|
||||||
if verbose(verboseDetail):
|
if verbose(verboseDetail):
|
||||||
print("process source: %s => %s" % (self.freebsdPath, self.rtemsPath))
|
print("process source: %s => %s" % (self.originPath, self.libbsdPath))
|
||||||
self.forwardConverter.convert(self.freebsdPath, self.rtemsPath)
|
self.forwardConverter.convert(self.originPath, self.libbsdPath)
|
||||||
else:
|
else:
|
||||||
if verbose(verboseDetail):
|
if verbose(verboseDetail):
|
||||||
print("process source: %s => %s converter:%s" % \
|
print("process source: %s => %s converter:%s" % \
|
||||||
(self.rtemsPath, self.freebsdPath, self.reverseConverter.__class__.__name__))
|
(self.libbsdPath, self.originPath, self.reverseConverter.__class__.__name__))
|
||||||
self.reverseConverter.convert(self.rtemsPath, self.freebsdPath)
|
self.reverseConverter.convert(self.libbsdPath, self.originPath)
|
||||||
|
|
||||||
def getFragment(self):
|
def getFragment(self):
|
||||||
return self.buildSystemComposer.compose(self.pathComposer.composeRTEMSPath(self.path, ''))
|
return self.buildSystemComposer.compose(self.pathComposer.composeLibBSDPath(self.path, ''))
|
||||||
|
|
||||||
#
|
#
|
||||||
# Module - logical group of related files we can perform actions on
|
# Module - logical group of related files we can perform actions on
|
||||||
@@ -638,13 +638,13 @@ class Module:
|
|||||||
self.files += [f]
|
self.files += [f]
|
||||||
|
|
||||||
def addFiles(self, newFiles,
|
def addFiles(self, newFiles,
|
||||||
pathComposer, fromFreeBSDToRTEMSConverter, fromRTEMSToFreeBSDConverter,
|
pathComposer, forwardConverter, reverseConverter,
|
||||||
assertFile, buildSystemComposer = BuildSystemFragmentComposer()):
|
assertFile, buildSystemComposer = BuildSystemFragmentComposer()):
|
||||||
files = []
|
files = []
|
||||||
for newFile in newFiles:
|
for newFile in newFiles:
|
||||||
assertFile(newFile)
|
assertFile(newFile)
|
||||||
files += [File(newFile, pathComposer, fromFreeBSDToRTEMSConverter,
|
files += [File(newFile, pathComposer, forwardConverter,
|
||||||
fromRTEMSToFreeBSDConverter, buildSystemComposer)]
|
reverseConverter, buildSystemComposer)]
|
||||||
return files
|
return files
|
||||||
|
|
||||||
def addKernelSpaceHeaderFiles(self, files):
|
def addKernelSpaceHeaderFiles(self, files):
|
||||||
@@ -661,9 +661,9 @@ class Module:
|
|||||||
self.files += self.addFiles(files, RTEMSPathComposer(),
|
self.files += self.addFiles(files, RTEMSPathComposer(),
|
||||||
NoConverter(), NoConverter(), assertHeaderFile)
|
NoConverter(), NoConverter(), assertHeaderFile)
|
||||||
|
|
||||||
def addCPUDependentHeaderFiles(self, files):
|
def addCPUDependentFreeBSDHeaderFiles(self, files):
|
||||||
self.files += self.addFiles(files,
|
self.files += self.addFiles(files,
|
||||||
CPUDependentPathComposer(), FromFreeBSDToRTEMSHeaderConverter(),
|
CPUDependentFreeBSDPathComposer(), FromFreeBSDToRTEMSHeaderConverter(),
|
||||||
FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile)
|
FromRTEMSToFreeBSDHeaderConverter(), assertHeaderFile)
|
||||||
|
|
||||||
def addTargetSourceCPUDependentHeaderFiles(self, targetCPUs, sourceCPU, files):
|
def addTargetSourceCPUDependentHeaderFiles(self, targetCPUs, sourceCPU, files):
|
||||||
@@ -696,12 +696,12 @@ class Module:
|
|||||||
RTEMSPathComposer(), NoConverter(), NoConverter(),
|
RTEMSPathComposer(), NoConverter(), NoConverter(),
|
||||||
assertSourceFile, sourceFileFragmentComposer)
|
assertSourceFile, sourceFileFragmentComposer)
|
||||||
|
|
||||||
def addCPUDependentSourceFiles(self, cpus, files, sourceFileFragmentComposer):
|
def addCPUDependentFreeBSDSourceFiles(self, cpus, files, sourceFileFragmentComposer):
|
||||||
for cpu in cpus:
|
for cpu in cpus:
|
||||||
self.initCPUDependencies(cpu)
|
self.initCPUDependencies(cpu)
|
||||||
self.cpuDependentSourceFiles[cpu] += \
|
self.cpuDependentSourceFiles[cpu] += \
|
||||||
self.addFiles(files,
|
self.addFiles(files,
|
||||||
CPUDependentPathComposer(), FromFreeBSDToRTEMSSourceConverter(),
|
CPUDependentFreeBSDPathComposer(), FromFreeBSDToRTEMSSourceConverter(),
|
||||||
FromRTEMSToFreeBSDSourceConverter(), assertSourceFile,
|
FromRTEMSToFreeBSDSourceConverter(), assertSourceFile,
|
||||||
sourceFileFragmentComposer)
|
sourceFileFragmentComposer)
|
||||||
|
|
||||||
|
@@ -59,9 +59,9 @@ def usage():
|
|||||||
print(" -m|--makefile Warning: depreciated and will be removed ")
|
print(" -m|--makefile Warning: depreciated and will be removed ")
|
||||||
print(" -b|--buildscripts just generate the build scripts")
|
print(" -b|--buildscripts just generate the build scripts")
|
||||||
print(" -S|--stats Print a statistics report")
|
print(" -S|--stats Print a statistics report")
|
||||||
print(" -R|--reverse default FreeBSD -> RTEMS, reverse that")
|
print(" -R|--reverse default origin -> LibBSD, reverse that")
|
||||||
print(" -r|--rtems RTEMS Libbsd directory (default: '.')")
|
print(" -r|--rtems LibBSD directory (default: '.')")
|
||||||
print(" -f|--freebsd FreeBSD SVN directory (default: 'freebsd-org')")
|
print(" -f|--freebsd FreeBSD origin directory (default: 'freebsd-org')")
|
||||||
print(" -v|--verbose enable verbose output mode")
|
print(" -v|--verbose enable verbose output mode")
|
||||||
|
|
||||||
# Parse the arguments
|
# Parse the arguments
|
||||||
@@ -107,7 +107,7 @@ def parseArguments():
|
|||||||
elif o in ("-R", "--reverse"):
|
elif o in ("-R", "--reverse"):
|
||||||
isForward = False
|
isForward = False
|
||||||
elif o in ("-r", "--rtems"):
|
elif o in ("-r", "--rtems"):
|
||||||
builder.RTEMS_DIR = a
|
builder.LIBBSD_DIR = a
|
||||||
elif o in ("-f", "--freebsd"):
|
elif o in ("-f", "--freebsd"):
|
||||||
builder.FreeBSD_DIR = a
|
builder.FreeBSD_DIR = a
|
||||||
else:
|
else:
|
||||||
@@ -120,8 +120,8 @@ print("Verbose: %s (%d)" % (("no", "yes")[builder.verbose()]
|
|||||||
print("Dry Run: %s" % (("no", "yes")[builder.isDryRun]))
|
print("Dry Run: %s" % (("no", "yes")[builder.isDryRun]))
|
||||||
print("Diff Mode Enabled: %s" % (("no", "yes")[builder.isDiffMode]))
|
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("RTEMS Libbsd Directory: %s" % (builder.RTEMS_DIR))
|
print("LibBSD Directory: %s" % (builder.LIBBSD_DIR))
|
||||||
print("FreeBSD SVN Directory: %s" % (builder.FreeBSD_DIR))
|
print("FreeBSD Directory: %s" % (builder.FreeBSD_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
|
||||||
@@ -134,15 +134,15 @@ def wasDirectorySet(desc, path):
|
|||||||
print("error:" + desc + " Directory (" + path + ") does not exist")
|
print("error:" + desc + " Directory (" + path + ") does not exist")
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
|
|
||||||
# Were RTEMS and FreeBSD directories specified
|
# Were directories specified?
|
||||||
wasDirectorySet( "RTEMS", builder.RTEMS_DIR )
|
wasDirectorySet( "LibBSD", builder.LIBBSD_DIR )
|
||||||
wasDirectorySet( "FreeBSD", builder.FreeBSD_DIR )
|
wasDirectorySet( "FreeBSD", builder.FreeBSD_DIR )
|
||||||
|
|
||||||
# Are we generating or reverting?
|
# Are we generating or reverting?
|
||||||
if isForward == True:
|
if isForward == True:
|
||||||
print("Forward from FreeBSD GIT into ", builder.RTEMS_DIR)
|
print("Forward from", builder.FreeBSD_DIR, "into", builder.LIBBSD_DIR)
|
||||||
else:
|
else:
|
||||||
print("Reverting from ", builder.RTEMS_DIR)
|
print("Reverting from", builder.LIBBSD_DIR)
|
||||||
if isOnlyBuildScripts == True:
|
if isOnlyBuildScripts == True:
|
||||||
print("error: Build Script generation and Reverse are contradictory")
|
print("error: Build Script generation and Reverse are contradictory")
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
|
16
libbsd.py
16
libbsd.py
@@ -1294,7 +1294,7 @@ def dev_nic(mm):
|
|||||||
'sys/sys/user.h',
|
'sys/sys/user.h',
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
mod.addCPUDependentHeaderFiles(
|
mod.addCPUDependentFreeBSDHeaderFiles(
|
||||||
[
|
[
|
||||||
'sys/arm/include/cpufunc.h',
|
'sys/arm/include/cpufunc.h',
|
||||||
'sys/i386/include/specialreg.h',
|
'sys/i386/include/specialreg.h',
|
||||||
@@ -2207,7 +2207,7 @@ def pci(mm):
|
|||||||
'sys/dev/pci/pcivar.h',
|
'sys/dev/pci/pcivar.h',
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
mod.addCPUDependentHeaderFiles(
|
mod.addCPUDependentFreeBSDHeaderFiles(
|
||||||
[
|
[
|
||||||
'sys/i386/include/_bus.h',
|
'sys/i386/include/_bus.h',
|
||||||
'sys/i386/include/legacyvar.h',
|
'sys/i386/include/legacyvar.h',
|
||||||
@@ -2215,7 +2215,7 @@ def pci(mm):
|
|||||||
'sys/x86/include/pci_cfgreg.h',
|
'sys/x86/include/pci_cfgreg.h',
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
mod.addCPUDependentSourceFiles(
|
mod.addCPUDependentFreeBSDSourceFiles(
|
||||||
[ 'i386' ],
|
[ 'i386' ],
|
||||||
[
|
[
|
||||||
'sys/i386/i386/legacy.c',
|
'sys/i386/i386/legacy.c',
|
||||||
@@ -3967,7 +3967,7 @@ def in_cksum(mm):
|
|||||||
[
|
[
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
mod.addCPUDependentHeaderFiles(
|
mod.addCPUDependentFreeBSDHeaderFiles(
|
||||||
[
|
[
|
||||||
'sys/i386/include/in_cksum.h',
|
'sys/i386/include/in_cksum.h',
|
||||||
'sys/mips/include/in_cksum.h',
|
'sys/mips/include/in_cksum.h',
|
||||||
@@ -3983,28 +3983,28 @@ def in_cksum(mm):
|
|||||||
'sys/mips/include/in_cksum.h',
|
'sys/mips/include/in_cksum.h',
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
mod.addCPUDependentSourceFiles(
|
mod.addCPUDependentFreeBSDSourceFiles(
|
||||||
[ 'i386' ],
|
[ 'i386' ],
|
||||||
[
|
[
|
||||||
'sys/i386/i386/in_cksum.c',
|
'sys/i386/i386/in_cksum.c',
|
||||||
],
|
],
|
||||||
mm.generator['source']()
|
mm.generator['source']()
|
||||||
)
|
)
|
||||||
mod.addCPUDependentSourceFiles(
|
mod.addCPUDependentFreeBSDSourceFiles(
|
||||||
[ 'powerpc' ],
|
[ 'powerpc' ],
|
||||||
[
|
[
|
||||||
'sys/powerpc/powerpc/in_cksum.c',
|
'sys/powerpc/powerpc/in_cksum.c',
|
||||||
],
|
],
|
||||||
mm.generator['source']()
|
mm.generator['source']()
|
||||||
)
|
)
|
||||||
mod.addCPUDependentSourceFiles(
|
mod.addCPUDependentFreeBSDSourceFiles(
|
||||||
[ 'sparc64' ],
|
[ 'sparc64' ],
|
||||||
[
|
[
|
||||||
'sys/sparc64/sparc64/in_cksum.c',
|
'sys/sparc64/sparc64/in_cksum.c',
|
||||||
],
|
],
|
||||||
mm.generator['source']()
|
mm.generator['source']()
|
||||||
)
|
)
|
||||||
mod.addCPUDependentSourceFiles(
|
mod.addCPUDependentFreeBSDSourceFiles(
|
||||||
[
|
[
|
||||||
'arm', 'avr', 'bfin', 'h8300', 'lm32', 'm32c', 'm32r', 'm68k',
|
'arm', 'avr', 'bfin', 'h8300', 'lm32', 'm32c', 'm32r', 'm68k',
|
||||||
'mips', 'nios2', 'sh', 'sparc', 'v850'
|
'mips', 'nios2', 'sh', 'sparc', 'v850'
|
||||||
|
@@ -191,7 +191,7 @@ class ModuleManager(builder.ModuleManager):
|
|||||||
self.script += line + os.linesep
|
self.script += line + os.linesep
|
||||||
|
|
||||||
def write(self):
|
def write(self):
|
||||||
name = os.path.join(builder.RTEMS_DIR, 'libbsd_waf.py')
|
name = os.path.join(builder.LIBBSD_DIR, 'libbsd_waf.py')
|
||||||
converter = builder.Converter()
|
converter = builder.Converter()
|
||||||
converter.convert(name, name, srcContents = self.script)
|
converter.convert(name, name, srcContents = self.script)
|
||||||
|
|
||||||
@@ -207,7 +207,7 @@ class ModuleManager(builder.ModuleManager):
|
|||||||
self.generator['path'] = builder.PathComposer
|
self.generator['path'] = builder.PathComposer
|
||||||
self.generator['freebsd-path'] = builder.FreeBSDPathComposer
|
self.generator['freebsd-path'] = builder.FreeBSDPathComposer
|
||||||
self.generator['rtems-path'] = builder.RTEMSPathComposer
|
self.generator['rtems-path'] = builder.RTEMSPathComposer
|
||||||
self.generator['cpu-path'] = builder.CPUDependentPathComposer
|
self.generator['cpu-path'] = builder.CPUDependentFreeBSDPathComposer
|
||||||
self.generator['target-src-cpu--path'] = builder.TargetSourceCPUDependentPathComposer
|
self.generator['target-src-cpu--path'] = builder.TargetSourceCPUDependentPathComposer
|
||||||
|
|
||||||
self.generator['source'] = SourceFileFragmentComposer
|
self.generator['source'] = SourceFileFragmentComposer
|
||||||
|
Reference in New Issue
Block a user