]> git.saurik.com Git - apt-legacy.git/blame - apt-pkg/pkgsystem.cc
Attempt to skip and resync any seriously broken semantics in package sections.
[apt-legacy.git] / apt-pkg / pkgsystem.cc
CommitLineData
da6ee469
JF
1// -*- mode: cpp; mode: fold -*-
2// Description /*{{{*/
3// $Id: pkgsystem.cc,v 1.3 2004/02/27 00:43:16 mdz Exp $
4/* ######################################################################
5
6 System - Abstraction for running on different systems.
7
8 Basic general structure..
9
10 ##################################################################### */
11 /*}}}*/
12// Include Files /*{{{*/
da6ee469
JF
13#include <apt-pkg/pkgsystem.h>
14#include <apt-pkg/policy.h>
15#include <cassert>
00ec24d0 16#include <cstring>
da6ee469
JF
17 /*}}}*/
18
19pkgSystem *_system = 0;
20static pkgSystem *SysList[10];
21pkgSystem **pkgSystem::GlobalList = SysList;
22unsigned long pkgSystem::GlobalListLen = 0;
23
24// System::pkgSystem - Constructor /*{{{*/
25// ---------------------------------------------------------------------
26/* Add it to the global list.. */
27pkgSystem::pkgSystem()
28{
29 assert(GlobalListLen < sizeof(SysList)/sizeof(*SysList));
30 SysList[GlobalListLen] = this;
31 GlobalListLen++;
32}
33 /*}}}*/
34// System::GetSystem - Get the named system /*{{{*/
35// ---------------------------------------------------------------------
36/* */
37pkgSystem *pkgSystem::GetSystem(const char *Label)
38{
39 for (unsigned I = 0; I != GlobalListLen; I++)
40 if (strcmp(SysList[I]->Label,Label) == 0)
41 return SysList[I];
42 return 0;
43}
44 /*}}}*/