Module: RPM
- Defined in:
- lib/rpm.rb,
ext/rpm/rpm.c
Defined Under Namespace
Classes: Conflict, DB, Dependency, File, Icon, MatchIterator, Obsolete, Package, Patch, Provide, Require, Source, Spec, Transaction, Version
Constant Summary
collapse
- CallbackData =
rpm_sCallbackData
- Problem =
rpm_sProblem
- VERSION =
rb_str_new2(RUBY_RPM_VERSION)
- PROB_FILER_FORCE =
INT2NUM(RPMPROB_FILTER_REPLACEPKG
| RPMPROB_FILTER_REPLACENEWFILES
| RPMPROB_FILTER_REPLACEOLDFILES)
- PROB_FILER_REPLACEFILES =
INT2NUM(RPMPROB_FILTER_REPLACENEWFILES
| RPMPROB_FILTER_REPLACEOLDFILES)
- PROB_FILER_IGNORESIZE =
INT2NUM(RPMPROB_FILTER_DISKSPACE
| RPMPROB_FILTER_DISKNODES)
- BUILD__UNTIL_PREP =
INT2NUM(RPMBUILD_PREP)
- BUILD__UNTIL_BUILD =
INT2NUM(RPMBUILD_PREP
| RPMBUILD_BUILD)
- BUILD__UNTIL_INSTALL =
INT2NUM(RPMBUILD_PREP
| RPMBUILD_BUILD
| RPMBUILD_INSTALL)
- BUILD__BINARY_PACKAGE =
INT2NUM(RPMBUILD_PREP
| RPMBUILD_BUILD
| RPMBUILD_INSTALL
| RPMBUILD_PACKAGEBINARY
| RPMBUILD_CLEAN)
- BUILD__SOURCE_PACKAGE =
INT2NUM(RPMBUILD_PREP
| RPMBUILD_BUILD
| RPMBUILD_INSTALL
| RPMBUILD_PACKAGESOURCE
| RPMBUILD_CLEAN)
- BUILD__ALL_PACKAGE =
INT2NUM(RPMBUILD_PREP
| RPMBUILD_BUILD
| RPMBUILD_INSTALL
| RPMBUILD_PACKAGEBINARY
| RPMBUILD_PACKAGESOURCE
| RPMBUILD_CLEAN)
- BUILD__CHECK_FILELIST =
INT2NUM(RPMBUILD_PREP
| RPMBUILD_BUILD
| RPMBUILD_INSTALL
| RPMBUILD_FILECHECK)
- ChangeLog =
rpm_sChangeLog
Class Method Summary
collapse
Class Method Details
.[](name) ⇒ Object
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
# File 'ext/rpm/rpm.c', line 19
static VALUE
m_aref(VALUE m, VALUE name)
{
char buf[BUFSIZ];
char* tmp;
VALUE val;
if (TYPE(name) != T_STRING) {
rb_raise(rb_eTypeError, "illegal argument type");
}
sprintf(buf, "%%{%s}", RSTRING(name)->ptr);
tmp = strdup(buf);
expandMacros(NULL, NULL, buf, BUFSIZ);
if (strcmp(tmp, buf) == 0) {
val = Qnil;
} else {
val = rb_str_new2(buf);
}
free(tmp);
return val;
}
|
.[]=(name, val) ⇒ Object
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# File 'ext/rpm/rpm.c', line 49
static VALUE
m_aset(VALUE m, VALUE name, VALUE val)
{
if (TYPE(name) != T_STRING
|| (val != Qnil && TYPE(val) != T_STRING)) {
rb_raise(rb_eTypeError, "illegal argument type(s)");
}
if (val == Qnil) {
delMacro(NULL, RSTRING(name)->ptr);
} else {
addMacro(NULL, RSTRING(name)->ptr, NULL, RSTRING(val)->ptr, RMIL_DEFAULT);
}
return Qnil;
}
|
.expand(name) ⇒ Object
13
14
15
16
17
|
# File 'ext/rpm/rpm.c', line 13
static VALUE
m_expand(VALUE m, VALUE name)
{
return rb_str_new2(rpmExpand(StringValueCStr(name), NULL));
}
|
.init_macros(*args) ⇒ Object
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
# File 'ext/rpm/rpm.c', line 104
static VALUE
m_init_macros(int argc, VALUE* argv, VALUE m)
{
register int i;
char buf[BUFSIZ];
if (argc == 0) {
rb_raise(rb_eArgError, "too few argument(>= 1)");
}
buf[0] = '\0';
for (i = 0; i < argc; i++) {
if (TYPE(argv[i]) != T_STRING) {
rb_raise(rb_eTypeError, "illegal argument type(s)");
}
strcat(buf, RSTRING(argv[i])->ptr);
strcat(buf, ":");
}
rpmInitMacros(NULL, buf);
return Qnil;
}
|
.readrc(*args) ⇒ Object
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
# File 'ext/rpm/rpm.c', line 70
static VALUE
m_readrc(int argc, VALUE* argv, VALUE m)
{
register int i;
char buf[BUFSIZ];
if (argc == 0) {
rb_raise(rb_eArgError, "too few argument(>= 1)");
}
buf[0] = '\0';
for (i = 0; i < argc; i++) {
if (TYPE(argv[i]) != T_STRING) {
rb_raise(rb_eTypeError, "illegal argument type(s)");
}
strcat(buf, RSTRING(argv[i])->ptr);
strcat(buf, ":");
}
rpmFreeMacros(NULL);
if (rpmReadConfigFiles(buf, NULL)) {
rb_raise(rb_eRuntimeError, "can not read rc file %s", buf);
}
return Qnil;
}
|
.verbosity ⇒ Object
137
138
139
140
141
|
# File 'ext/rpm/rpm.c', line 137
static VALUE
m_get_verbosity(VALUE m)
{
return INT2NUM(rpm_verbosity);
}
|
.verbosity=(verbosity) ⇒ Object
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
|
# File 'ext/rpm/rpm.c', line 149
static VALUE
m_set_verbosity(VALUE m, VALUE verbosity)
{
int v = NUM2INT(rb_Integer(verbosity));
switch (v) {
case RPMLOG_EMERG: case RPMLOG_ALERT:
case RPMLOG_CRIT: case RPMLOG_ERR:
case RPMLOG_WARNING: case RPMLOG_NOTICE:
case RPMLOG_INFO: case RPMLOG_DEBUG:
break;
default:
rb_raise(rb_eArgError, "invalid verbosity");
}
rpmSetVerbosity(v);
rpm_verbosity = v;
return Qnil;
}
|
.vercmp(ver1, ver2) ⇒ Object
12
13
14
15
16
17
|
# File 'lib/rpm.rb', line 12
def vercmp(ver1, ver2)
unless String === ver1 and String === ver2 then
raise TypeError, 'illegal argument type'
end
RPM::Version.new(ver1) <=> RPM::Version.new(ver2)
end
|