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