support/package-builder/SpecStructures.py
0f1fdc4b
 
2820c61a
 class dependentPackageData(object):
 
     def __init__(self):
87815216
         self.package = ""
         self.version = ""
         self.compare = ""
5f40784b
 
2820c61a
 class Package(object):
a007b861
     def __init__(self, buildarch, basePkg=None):
87815216
         self.summary = ""
         self.name = ""
         self.group = ""
         self.license = ""
         self.version = ""
         self.release = ""
a007b861
         self.buildarch = buildarch
87815216
         self.distribution = "Photon"
         self.basePkgName = ""
         self.URL = ""
5f40784b
 
87815216
         self.sources = []
         self.checksums = {}
         self.patches = []
         self.buildrequires = []
         self.buildprovides = []
         self.checkbuildrequires = []
8f56b626
         self.extrabuildrequires = []
a007b861
         self.buildrequiresnative = []
5f40784b
 
87815216
         self.requires = []
         self.provides = []
         self.obsoletes = []
         self.conflicts = []
5f40784b
 
87815216
         self.descriptionMacro = None
         self.postMacro = None
         self.postunMacro = None
         self.filesMacro = None
         self.packageMacro = None
5f40784b
 
2820c61a
         if basePkg is not None:
87815216
             self.basePkgName = basePkg.name
             self.group = basePkg.group
             self.license = basePkg.license
             self.version = basePkg.version
             self.buildarch = basePkg.buildarch
             self.release = basePkg.release
             self.distribution = basePkg.distribution
5f40784b
 
87815216
     def updatePackageMacro(self, macro):
2820c61a
         if macro.macroName == "%post":
87815216
             self.postMacro = macro
2820c61a
         if macro.macroName == "%postun":
87815216
             self.postunMacro = macro
2820c61a
         if macro.macroName == "%files":
87815216
             self.filesMacro = macro
2820c61a
         if macro.macroName == "%description":
             self.descriptionMacro = macro
4ed339b4
 
 class SpecObject(object):
     def __init__(self):
         self.name = ""
         self.version = ""
         self.release = ""
         # map subpackage name to its buildarch
         self.buildarch = {}
         # list of subpackage names
         self.listPackages = []
         # list of subpackage names that have %files section
         self.listRPMPackages = []
 
a007b861
         # Next five lists store dependentPackageData objects
4ed339b4
         self.buildRequires = []
         self.installRequires = []
         self.checkBuildRequires = []
         self.extraBuildRequires = []
a007b861
         self.buildRequiresNative = []
4ed339b4
         # map subpackage name to list of install requires
         # dependentPackageData objects
         self.installRequiresPackages = {}
 
         # full spec file name
         self.specFile = ""
         self.listSources = []
         self.checksums = {}
         self.listPatches = []
         self.securityHardening = ""
         self.url = ""
         self.sourceurl = ""
         self.license = ""