]> cygwin.com Git - cygwin-apps/setup.git/blame - cygpackage.h
* prereq.cc (PrereqChecker::getUnmetString): Improve dependency list
[cygwin-apps/setup.git] / cygpackage.h
CommitLineData
7939f6d1
RC
1/*
2 * Copyright (c) 2001, Robert Collins.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * A copy of the GNU General Public License can be found at
10 * http://www.gnu.org/
11 *
12 * Written by Robert Collins <rbtcollins@hotmail.com>
13 *
14 */
15
c93bc6d0
MB
16#ifndef SETUP_CYGPACKAGE_H
17#define SETUP_CYGPACKAGE_H
18
7939f6d1
RC
19/* This is a cygwin specific package class, that should be able to
20 * arbitrate acceess to cygwin binary packages amd cygwin source packages
21 */
22
4875ac88 23/* for MAX_PATH */
45e01f23 24#include "win32.h"
3c054baf 25
3c196821
RC
26#include "package_version.h"
27
3a8630fd
MB
28class io_stream;
29
3c196821 30class cygpackage:public _packageversion
7939f6d1
RC
31{
32public:
02d06553
MB
33 virtual const std::string Name ();
34 virtual const std::string Vendor_version ();
35 virtual const std::string Package_version ();
36 virtual const std::string Canonical_version ();
7b606ae5
RC
37 virtual package_status_t Status ()
38 {
39 return status;
40 };
41 virtual package_type_t Type ()
42 {
43 return type;
44 };
02d06553
MB
45 virtual void set_sdesc (const std::string& );
46 virtual void set_ldesc (const std::string& );
47 virtual const std::string SDesc ()
d4a4527d 48 {
bb849dbd
RC
49 return sdesc;
50 };
02d06553 51 virtual const std::string LDesc ()
bb849dbd
RC
52 {
53 return ldesc;
d4a4527d 54 };
fa0c0d10
RC
55 virtual void uninstall ();
56
7939f6d1
RC
57
58 /* pass the name of the package when constructing */
02d06553 59 void setCanonicalVersion (const std::string& );
7b606ae5
RC
60
61
62 virtual ~ cygpackage ();
7939f6d1
RC
63 /* TODO: we should probably return a metaclass - file name & path & size & type
64 - ie doc/script/binary
65 */
02d06553
MB
66 virtual const std::string getfirstfile ();
67 virtual const std::string getnextfile ();
3c196821
RC
68
69 /* pass the name of the package when constructing */
02d06553 70 static packageversion createInstance (const std::string& pkgname,
846e099d
MB
71 const package_type_t type);
72
02d06553
MB
73 static packageversion createInstance (const std::string& ,
74 const std::string& ,
0ec7cbc9 75 const std::string& ,
3c196821
RC
76 package_status_t const,
77 package_type_t const);
846e099d 78
7939f6d1 79private:
3c196821 80 cygpackage ();
7939f6d1 81 void destroy ();
02d06553
MB
82 std::string name;
83 std::string vendor;
84 std::string packagev;
85 std::string canonical;
86 std::string fn;
87 std::string sdesc, ldesc;
4875ac88 88 char getfilenamebuffer[MAX_PATH];
7b606ae5 89
7939f6d1
RC
90// package_stability_t stability;
91 package_status_t status;
92 package_type_t type;
7b606ae5 93
7939f6d1 94 io_stream *listdata, *listfile;
7939f6d1
RC
95};
96
c93bc6d0 97#endif /* SETUP_CYGPACKAGE_H */
This page took 0.048867 seconds and 5 git commands to generate.