ruby-libvirt 0.7.1 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,502 +4,18 @@ RbConfig::MAKEFILE_CONFIG['CC'] = ENV['CC'] if ENV['CC']
4
4
  RbConfig::MAKEFILE_CONFIG['CCDLFLAGS'] = ENV['CFLAGS'] if ENV['CFLAGS']
5
5
  RbConfig::MAKEFILE_CONFIG['EXTDLDFLAGS'] = ENV['CFLAGS'] if ENV['CFLAGS']
6
6
 
7
- # older mkmf does not have checking_message, so implement our own here
8
- def libvirt_checking_message(target, place = nil, opt = nil)
9
- [["in", place], ["with", opt]].inject("#{target}") do |msg, (pre, noun)|
10
- if noun
11
- [[:to_str], [:join, ","], [:to_s]].each do |meth, *args|
12
- if noun.respond_to?(meth)
13
- break noun = noun.send(meth, *args)
14
- end
15
- end
16
- msg << " #{pre} #{noun}" unless noun.empty?
17
- end
18
- msg
19
- end
20
- end
21
-
22
- def have_const(const, headers = nil, opt = "", &b)
23
- checking_for libvirt_checking_message(const, headers, opt) do
24
- headers = cpp_include(headers)
25
- if try_compile(<<"SRC", opt, &b)
26
- #{COMMON_HEADERS}
27
- #{headers}
28
- /*top*/
29
- static int t = #{const};
30
- SRC
31
- $defs.push(format("-DHAVE_CONST_%s", const.strip.upcase.tr_s("^A-Z0-9_", "_")))
32
- true
33
- else
34
- false
35
- end
36
- end
37
- end
38
-
39
7
  extension_name = '_libvirt'
40
8
 
41
- # this is a poor-man's dir_config, but is a bit more flexible. In particular,
42
- # it allows you to specify the exact location of the libvirt.so, as opposed
43
- # to requiring a lib/ subdirectory. Note that due to the way include files
44
- # are done within ruby-libvirt, the libvirt header file(s) must be in a libvirt/
45
- # subdirectory. Also note that if specifying the include directory, the
46
- # location of the library must also be specified. Finally, note that if neither
47
- # the include nor the library are specified, the build will attempt to use
48
- # pkg-config to discover this information.
49
- #
50
- # Taking all of the above rules into account, the valid options are either:
51
- # $ ruby extconf.rb --with-libvirt-include=/home/clalance/libvirt/include \
52
- # --with-libvirt-lib=/home/clalance/libvirt/src/.libs
53
- #
54
- # To specify the location of the include files and the library, or:
55
- # $ ruby extconf.rb
56
- #
57
- # to attempt to use pkg-config to do it automatically from the system files.
58
- include = with_config("libvirt-include")
59
- lib = with_config("libvirt-lib")
60
- if include and lib
61
- $LIBPATH = [lib] | $LIBPATH
62
- $CPPFLAGS += " -I" + include
63
- have_library("virt", "virConnectOpen", "libvirt/libvirt.h")
64
-
65
- # if we are using custom libvirt libraries, we have to suppress the default
66
- # library path so have_func() only picks up the custom ones, not the installed
67
- # ones
68
- $DEFLIBPATH = []
69
- elsif (include and not lib) or (not include and lib)
70
- raise "Must specify both --with-libvirt-include and --with-libvirt-lib, or neither"
71
- else
72
- unless pkg_config("libvirt")
73
- raise "libvirt library not found in default locations"
74
- end
9
+ unless pkg_config("libvirt")
10
+ raise "libvirt library not found in default locations"
75
11
  end
76
12
 
77
-
78
- libvirt_types = [ 'virNetworkPtr',
79
- 'virStoragePoolPtr',
80
- 'virStorageVolPtr',
81
- 'virSecretPtr',
82
- 'virNWFilterPtr',
83
- 'virInterfacePtr',
84
- 'virDomainBlockInfoPtr',
85
- 'virDomainMemoryStatPtr',
86
- 'virDomainSnapshotPtr',
87
- 'virDomainJobInfoPtr',
88
- 'virNodeDevicePtr',
89
- 'virStreamPtr',
90
- 'virTypedParameterPtr',
91
- 'virDomainBlockJobInfoPtr',
92
- ]
93
-
94
- libvirt_funcs = [ 'virStorageVolWipe',
95
- 'virStoragePoolIsActive',
96
- 'virStoragePoolIsPersistent',
97
- 'virStorageVolCreateXMLFrom',
98
- 'virConnectGetLibVersion',
99
- 'virConnectIsEncrypted',
100
- 'virConnectIsSecure',
101
- 'virNetworkIsActive',
102
- 'virNetworkIsPersistent',
103
- 'virNodeDeviceCreateXML',
104
- 'virNodeDeviceDestroy',
105
- 'virInterfaceIsActive',
106
- 'virDomainMigrateToURI',
107
- 'virDomainMigrateSetMaxDowntime',
108
- 'virDomainManagedSave',
109
- 'virDomainIsActive',
110
- 'virDomainIsPersistent',
111
- 'virConnectDomainXMLFromNative',
112
- 'virConnectDomainXMLToNative',
113
- 'virDomainCreateWithFlags',
114
- 'virDomainAttachDeviceFlags',
115
- 'virDomainDetachDeviceFlags',
116
- 'virDomainUpdateDeviceFlags',
117
- 'virNodeGetSecurityModel',
118
- 'virDomainCreateXML',
119
- 'virDomainGetSecurityLabel',
120
- 'virConnectCompareCPU',
121
- 'virConnectBaselineCPU',
122
- 'virDomainSetVcpusFlags',
123
- 'virDomainGetVcpusFlags',
124
- 'virConnectDomainEventRegisterAny',
125
- 'virConnectDomainEventRegister',
126
- 'virDomainBlockPeek',
127
- 'virDomainMemoryPeek',
128
- 'virConnectOpenAuth',
129
- 'virEventRegisterImpl',
130
- 'virDomainIsUpdated',
131
- 'virDomainSetMemoryParameters',
132
- 'virConnectGetSysinfo',
133
- 'virDomainSetBlkioParameters',
134
- 'virDomainSetMemoryFlags',
135
- 'virDomainGetState',
136
- 'virDomainOpenConsole',
137
- 'virDomainMigrate2',
138
- 'virDomainScreenshot',
139
- 'virInterfaceChangeBegin',
140
- 'virStorageVolDownload',
141
- 'virDomainInjectNMI',
142
- 'virDomainGetControlInfo',
143
- 'virDomainMigrateGetMaxSpeed',
144
- 'virNodeGetCPUStats',
145
- 'virNodeGetMemoryStats',
146
- 'virDomainDestroyFlags',
147
- 'virDomainSaveFlags',
148
- 'virDomainSaveImageGetXMLDesc',
149
- 'virDomainSendKey',
150
- 'virNetworkUpdate',
151
- 'virNodeSuspendForDuration',
152
- 'virNodeGetMemoryParameters',
153
- 'virNodeGetCPUMap',
154
- 'virDomainUndefineFlags',
155
- 'virDomainPinVcpuFlags',
156
- 'virDomainGetVcpuPinInfo',
157
- 'virDomainSnapshotGetName',
158
- 'virConnectSetKeepAlive',
159
- 'virDomainReset',
160
- 'virDomainShutdownFlags',
161
- 'virDomainGetHostname',
162
- 'virDomainGetMetadata',
163
- 'virDomainSetMetadata',
164
- 'virConnectListAllDomains',
165
- 'virConnectListAllNetworks',
166
- 'virConnectListAllInterfaces',
167
- 'virConnectListAllSecrets',
168
- 'virConnectListAllNodeDevices',
169
- 'virConnectListAllStoragePools',
170
- 'virConnectListAllNWFilters',
171
- 'virConnectIsAlive',
172
- 'virNodeDeviceDetachFlags',
173
- 'virDomainSendProcessSignal',
174
- 'virDomainListAllSnapshots',
175
- 'virDomainSnapshotNumChildren',
176
- 'virDomainSnapshotListChildrenNames',
177
- 'virDomainSnapshotListAllChildren',
178
- 'virDomainSnapshotGetParent',
179
- 'virDomainSnapshotIsCurrent',
180
- 'virDomainSnapshotHasMetadata',
181
- 'virDomainSetMemoryStatsPeriod',
182
- 'virDomainFSTrim',
183
- 'virDomainBlockRebase',
184
- 'virDomainOpenChannel',
185
- 'virNodeDeviceLookupSCSIHostByWWN',
186
- 'virStorageVolWipePattern',
187
- 'virStoragePoolListAllVolumes',
188
- 'virDomainCreateWithFiles',
189
- 'virDomainCreateXMLWithFiles',
190
- 'virDomainOpenGraphics',
191
- 'virStorageVolResize',
192
- 'virDomainPMWakeup',
193
- 'virDomainBlockResize',
194
- 'virDomainPMSuspendForDuration',
195
- 'virDomainMigrateGetCompressionCache',
196
- 'virDomainMigrateSetCompressionCache',
197
- 'virDomainGetDiskErrors',
198
- 'virDomainGetEmulatorPinInfo',
199
- 'virDomainPinEmulator',
200
- 'virDomainGetSecurityLabelList',
201
- 'virDomainGetJobStats',
202
- 'virDomainGetBlockIoTune',
203
- 'virDomainSetBlockIoTune',
204
- 'virDomainBlockCommit',
205
- 'virDomainBlockPull',
206
- 'virDomainBlockJobSetSpeed',
207
- 'virDomainGetBlockJobInfo',
208
- 'virDomainBlockJobAbort',
209
- 'virDomainGetInterfaceParameters',
210
- 'virDomainBlockStatsFlags',
211
- 'virDomainGetNumaParameters',
212
- 'virConnectGetCPUModelNames',
213
- 'virDomainMigrate3',
214
- 'virDomainGetCPUStats',
215
- 'virNetworkGetDHCPLeases',
216
- 'virNodeAllocPages',
217
- 'virDomainGetTime',
218
- 'virDomainSetTime',
219
- 'virConnectGetDomainCapabilities',
220
- 'virDomainCoreDumpWithFormat',
221
- 'virDomainFSFreeze',
222
- 'virDomainFSThaw',
223
- 'virDomainGetFSInfo',
224
- 'virNodeGetFreePages',
225
- 'virDomainDefineXMLFlags',
226
- 'virDomainRename',
227
- 'virDomainSetUserPassword',
228
- ]
229
-
230
- libvirt_qemu_funcs = [ 'virDomainQemuMonitorCommand',
231
- 'virDomainQemuAttach',
232
- 'virDomainQemuAgentCommand'
233
- ]
234
-
235
- libvirt_lxc_funcs = [
236
- 'virDomainLxcOpenNamespace',
237
- 'virDomainLxcEnterNamespace',
238
- 'virDomainLxcEnterSecurityLabel',
239
- ]
240
-
241
- libvirt_consts = [ 'VIR_MIGRATE_LIVE',
242
- 'VIR_MIGRATE_PEER2PEER',
243
- 'VIR_MIGRATE_TUNNELLED',
244
- 'VIR_MIGRATE_PERSIST_DEST',
245
- 'VIR_MIGRATE_UNDEFINE_SOURCE',
246
- 'VIR_MIGRATE_PAUSED',
247
- 'VIR_MIGRATE_NON_SHARED_DISK',
248
- 'VIR_MIGRATE_NON_SHARED_INC',
249
- 'VIR_DOMAIN_XML_UPDATE_CPU',
250
- 'VIR_MEMORY_PHYSICAL',
251
- 'VIR_DOMAIN_START_PAUSED',
252
- 'VIR_DUMP_CRASH',
253
- 'VIR_DUMP_LIVE',
254
- 'VIR_DOMAIN_DEVICE_MODIFY_CURRENT',
255
- 'VIR_DOMAIN_DEVICE_MODIFY_LIVE',
256
- 'VIR_DOMAIN_DEVICE_MODIFY_CONFIG',
257
- 'VIR_DOMAIN_DEVICE_MODIFY_FORCE',
258
- 'VIR_INTERFACE_XML_INACTIVE',
259
- 'VIR_STORAGE_POOL_INACCESSIBLE',
260
- 'VIR_DOMAIN_EVENT_DEFINED',
261
- 'VIR_DOMAIN_EVENT_STARTED',
262
- 'VIR_DOMAIN_EVENT_SUSPENDED_IOERROR',
263
- 'VIR_DOMAIN_EVENT_ID_WATCHDOG',
264
- 'VIR_DOMAIN_EVENT_ID_IO_ERROR',
265
- 'VIR_DOMAIN_EVENT_ID_GRAPHICS',
266
- 'VIR_DOMAIN_EVENT_ID_REBOOT',
267
- 'VIR_DOMAIN_EVENT_ID_RTC_CHANGE',
268
- 'VIR_DOMAIN_EVENT_ID_IO_ERROR_REASON',
269
- 'VIR_DOMAIN_AFFECT_CURRENT',
270
- 'VIR_DOMAIN_MEM_CURRENT',
271
- 'VIR_DOMAIN_EVENT_ID_CONTROL_ERROR',
272
- 'VIR_DOMAIN_PAUSED_SHUTTING_DOWN',
273
- 'VIR_DOMAIN_START_AUTODESTROY',
274
- 'VIR_DOMAIN_START_BYPASS_CACHE',
275
- 'VIR_DOMAIN_START_FORCE_BOOT',
276
- 'VIR_DOMAIN_MEMORY_STAT_ACTUAL_BALLOON',
277
- 'VIR_DUMP_BYPASS_CACHE',
278
- 'VIR_MIGRATE_CHANGE_PROTECTION',
279
- 'VIR_DOMAIN_SAVE_BYPASS_CACHE',
280
- 'VIR_DOMAIN_SAVE_RUNNING',
281
- 'VIR_DOMAIN_SAVE_PAUSED',
282
- 'VIR_NETWORK_UPDATE_COMMAND_NONE',
283
- 'VIR_NETWORK_UPDATE_COMMAND_MODIFY',
284
- 'VIR_NETWORK_UPDATE_COMMAND_DELETE',
285
- 'VIR_NETWORK_UPDATE_COMMAND_ADD_LAST',
286
- 'VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST',
287
- 'VIR_NETWORK_SECTION_NONE',
288
- 'VIR_NETWORK_SECTION_BRIDGE',
289
- 'VIR_NETWORK_SECTION_DOMAIN',
290
- 'VIR_NETWORK_SECTION_IP',
291
- 'VIR_NETWORK_SECTION_IP_DHCP_HOST',
292
- 'VIR_NETWORK_SECTION_IP_DHCP_RANGE',
293
- 'VIR_NETWORK_SECTION_FORWARD',
294
- 'VIR_NETWORK_SECTION_FORWARD_INTERFACE',
295
- 'VIR_NETWORK_SECTION_FORWARD_PF',
296
- 'VIR_NETWORK_SECTION_PORTGROUP',
297
- 'VIR_NETWORK_SECTION_DNS_HOST',
298
- 'VIR_NETWORK_SECTION_DNS_TXT',
299
- 'VIR_NETWORK_SECTION_DNS_SRV',
300
- 'VIR_NETWORK_UPDATE_AFFECT_CURRENT',
301
- 'VIR_NETWORK_UPDATE_AFFECT_LIVE',
302
- 'VIR_NETWORK_UPDATE_AFFECT_CONFIG',
303
- 'VIR_DOMAIN_PMSUSPENDED',
304
- 'VIR_DOMAIN_RUNNING_WAKEUP',
305
- 'VIR_DOMAIN_PMSUSPENDED_UNKNOWN',
306
- 'VIR_DOMAIN_UNDEFINE_MANAGED_SAVE',
307
- 'VIR_DOMAIN_UNDEFINE_SNAPSHOTS_METADATA',
308
- 'VIR_DOMAIN_PAUSED_SNAPSHOT',
309
- 'VIR_DOMAIN_PMSUSPENDED_DISK_UNKNOWN',
310
- 'VIR_DUMP_RESET',
311
- 'VIR_DUMP_MEMORY_ONLY',
312
- 'VIR_DOMAIN_SHUTDOWN_DEFAULT',
313
- 'VIR_DOMAIN_SHUTDOWN_ACPI_POWER_BTN',
314
- 'VIR_DOMAIN_SHUTDOWN_GUEST_AGENT',
315
- 'VIR_DOMAIN_SHUTDOWN_INITCTL',
316
- 'VIR_DOMAIN_SHUTDOWN_SIGNAL',
317
- 'VIR_DOMAIN_REBOOT_DEFAULT',
318
- 'VIR_DOMAIN_REBOOT_ACPI_POWER_BTN',
319
- 'VIR_DOMAIN_REBOOT_GUEST_AGENT',
320
- 'VIR_DOMAIN_REBOOT_INITCTL',
321
- 'VIR_DOMAIN_REBOOT_SIGNAL',
322
- 'VIR_DOMAIN_DESTROY_DEFAULT',
323
- 'VIR_DOMAIN_DESTROY_GRACEFUL',
324
- 'VIR_CONNECT_LIST_NODE_DEVICES_CAP_FC_HOST',
325
- 'VIR_DOMAIN_SNAPSHOT_LIST_INACTIVE',
326
- 'VIR_DOMAIN_SNAPSHOT_CREATE_REDEFINE',
327
- 'VIR_DOMAIN_SNAPSHOT_CREATE_LIVE',
328
- 'VIR_DOMAIN_BLOCK_REBASE_SHALLOW',
329
- 'VIR_DOMAIN_BLOCK_REBASE_REUSE_EXT',
330
- 'VIR_DOMAIN_BLOCK_REBASE_COPY_RAW',
331
- 'VIR_DOMAIN_BLOCK_REBASE_COPY',
332
- 'VIR_DOMAIN_CHANNEL_FORCE',
333
- 'VIR_DOMAIN_CONSOLE_FORCE',
334
- 'VIR_DOMAIN_CONSOLE_SAFE',
335
- 'VIR_STORAGE_VOL_WIPE_ALG_ZERO',
336
- 'VIR_STORAGE_VOL_WIPE_ALG_NNSA',
337
- 'VIR_STORAGE_VOL_WIPE_ALG_DOD',
338
- 'VIR_STORAGE_VOL_WIPE_ALG_BSI',
339
- 'VIR_STORAGE_VOL_WIPE_ALG_GUTMANN',
340
- 'VIR_STORAGE_VOL_WIPE_ALG_SCHNEIER',
341
- 'VIR_STORAGE_VOL_WIPE_ALG_PFITZNER7',
342
- 'VIR_STORAGE_VOL_WIPE_ALG_PFITZNER33',
343
- 'VIR_STORAGE_VOL_WIPE_ALG_RANDOM',
344
- 'VIR_DOMAIN_BLOCK_RESIZE_BYTES',
345
- 'VIR_DOMAIN_MEMORY_STAT_RSS',
346
- 'VIR_MIGRATE_UNSAFE',
347
- 'VIR_MIGRATE_OFFLINE',
348
- 'VIR_MIGRATE_COMPRESSED',
349
- 'VIR_MIGRATE_ABORT_ON_ERROR',
350
- 'VIR_CONNECT_NO_ALIASES',
351
- 'VIR_DOMAIN_XML_MIGRATABLE',
352
- 'VIR_NETWORK_XML_INACTIVE',
353
- 'VIR_STORAGE_VOL_DIR',
354
- 'VIR_STORAGE_VOL_NETWORK',
355
- 'VIR_STORAGE_XML_INACTIVE',
356
- 'VIR_STORAGE_VOL_CREATE_PREALLOC_METADATA',
357
- 'VIR_SECRET_USAGE_TYPE_CEPH',
358
- 'VIR_DOMAIN_SNAPSHOT_REVERT_RUNNING',
359
- 'VIR_DOMAIN_SNAPSHOT_REVERT_PAUSED',
360
- 'VIR_DOMAIN_SNAPSHOT_REVERT_FORCE',
361
- 'VIR_SECRET_USAGE_TYPE_ISCSI',
362
- 'VIR_DOMAIN_NOSTATE_UNKNOWN',
363
- 'VIR_DOMAIN_RUNNING_CRASHED',
364
- 'VIR_DOMAIN_PAUSED_CRASHED',
365
- 'VIR_DOMAIN_CRASHED_PANICKED',
366
- 'VIR_NODE_CPU_STATS_ALL_CPUS',
367
- 'VIR_NODE_MEMORY_STATS_ALL_CELLS',
368
- 'VIR_DOMAIN_VCPU_CURRENT',
369
- 'VIR_DOMAIN_VCPU_GUEST',
370
- 'VIR_NETWORK_UPDATE_COMMAND_DELETE',
371
- 'VIR_STORAGE_POOL_BUILD_NO_OVERWRITE',
372
- 'VIR_STORAGE_POOL_BUILD_OVERWRITE',
373
- 'VIR_KEYCODE_SET_LINUX',
374
- 'VIR_KEYCODE_SET_XT',
375
- 'VIR_KEYCODE_SET_ATSET1',
376
- 'VIR_KEYCODE_SET_ATSET2',
377
- 'VIR_KEYCODE_SET_ATSET3',
378
- 'VIR_KEYCODE_SET_OSX',
379
- 'VIR_KEYCODE_SET_XT_KBD',
380
- 'VIR_KEYCODE_SET_USB',
381
- 'VIR_KEYCODE_SET_WIN32',
382
- 'VIR_KEYCODE_SET_RFB',
383
- 'VIR_DOMAIN_EVENT_SHUTDOWN',
384
- 'VIR_DOMAIN_EVENT_PMSUSPENDED',
385
- 'VIR_DOMAIN_EVENT_CRASHED',
386
- 'VIR_DOMAIN_EVENT_STARTED_WAKEUP',
387
- 'VIR_DOMAIN_EVENT_SUSPENDED_RESTORED',
388
- 'VIR_DOMAIN_EVENT_SUSPENDED_FROM_SNAPSHOT',
389
- 'VIR_DOMAIN_EVENT_SUSPENDED_API_ERROR',
390
- 'VIR_DOMAIN_EVENT_RESUMED_FROM_SNAPSHOT',
391
- 'VIR_DOMAIN_EVENT_SHUTDOWN_FINISHED',
392
- 'VIR_DOMAIN_EVENT_PMSUSPENDED_MEMORY',
393
- 'VIR_DOMAIN_EVENT_PMSUSPENDED_DISK',
394
- 'VIR_DOMAIN_EVENT_CRASHED_PANICKED',
395
- 'VIR_SECRET_USAGE_TYPE_NONE',
396
- 'VIR_CONNECT_BASELINE_CPU_EXPAND_FEATURES',
397
- 'VIR_DOMAIN_SNAPSHOT_DELETE_METADATA_ONLY',
398
- 'VIR_DOMAIN_SNAPSHOT_DELETE_CHILDREN_ONLY',
399
- 'VIR_DOMAIN_EVENT_GRAPHICS_ADDRESS_UNIX',
400
- 'VIR_DOMAIN_BLOCK_COMMIT_SHALLOW',
401
- 'VIR_DOMAIN_BLOCK_COMMIT_DELETE',
402
- 'VIR_DOMAIN_BLOCK_JOB_TYPE_UNKNOWN',
403
- 'VIR_DOMAIN_BLOCK_JOB_TYPE_PULL',
404
- 'VIR_DOMAIN_BLOCK_JOB_TYPE_COPY',
405
- 'VIR_DOMAIN_BLOCK_JOB_TYPE_COMMIT',
406
- 'VIR_DOMAIN_BLOCK_JOB_ABORT_ASYNC',
407
- 'VIR_DOMAIN_BLOCK_JOB_ABORT_PIVOT',
408
- 'VIR_DOMAIN_BLOCK_JOB_COMPLETED',
409
- 'VIR_DOMAIN_BLOCK_JOB_FAILED',
410
- 'VIR_DOMAIN_BLOCK_JOB_CANCELED',
411
- 'VIR_DOMAIN_BLOCK_JOB_READY',
412
- 'VIR_NODE_MEMORY_SHARED_MERGE_ACROSS_NODES',
413
- 'VIR_CONNECT_LIST_NODE_DEVICES_CAP_SCSI_GENERIC',
414
- 'VIR_MIGRATE_PARAM_LISTEN_ADDRESS',
415
- 'VIR_DOMAIN_SCHEDULER_EMULATOR_PERIOD',
416
- 'VIR_DOMAIN_SCHEDULER_EMULATOR_QUOTA',
417
- 'VIR_DOMAIN_SNAPSHOT_CREATE_REUSE_EXT',
418
- 'VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE',
419
- 'VIR_DOMAIN_SNAPSHOT_CREATE_ATOMIC',
420
- 'VIR_CONNECT_LIST_STORAGE_POOLS_GLUSTER',
421
- 'VIR_CONNECT_LIST_STORAGE_POOLS_ZFS',
422
- 'VIR_STORAGE_VOL_NETDIR',
423
- 'VIR_IP_ADDR_TYPE_IPV4',
424
- 'VIR_IP_ADDR_TYPE_IPV6',
425
- 'VIR_CONNECT_COMPARE_CPU_FAIL_INCOMPATIBLE',
426
- 'VIR_DOMAIN_UNDEFINE_NVRAM',
427
- 'VIR_DOMAIN_BLOCK_JOB_TYPE_ACTIVE_COMMIT',
428
- 'VIR_DOMAIN_BLOCK_JOB_INFO_BANDWIDTH_BYTES',
429
- 'VIR_DOMAIN_BLOCK_JOB_SPEED_BANDWIDTH_BYTES',
430
- 'VIR_DOMAIN_BLOCK_COMMIT_ACTIVE',
431
- 'VIR_DOMAIN_BLOCK_COMMIT_RELATIVE',
432
- 'VIR_DOMAIN_BLOCK_COMMIT_BANDWIDTH_BYTES',
433
- 'VIR_DOMAIN_BLOCK_IOTUNE_SIZE_IOPS_SEC',
434
- 'VIR_STORAGE_POOL_CREATE_NORMAL',
435
- 'VIR_STORAGE_POOL_CREATE_WITH_BUILD',
436
- 'VIR_STORAGE_POOL_CREATE_WITH_BUILD_OVERWRITE',
437
- 'VIR_STORAGE_POOL_CREATE_WITH_BUILD_NO_OVERWRITE',
438
- 'VIR_STORAGE_VOL_CREATE_REFLINK',
439
- 'VIR_STORAGE_VOL_DELETE_WITH_SNAPSHOTS',
440
- 'VIR_DOMAIN_QEMU_AGENT_COMMAND_SHUTDOWN',
441
- 'VIR_DOMAIN_DEFINE_VALIDATE',
442
- 'VIR_DOMAIN_PASSWORD_ENCRYPTED',
443
- 'VIR_DOMAIN_TIME_SYNC',
444
- ]
445
-
446
- virterror_consts = [
447
- 'VIR_FROM_VMWARE',
448
- 'VIR_FROM_AUDIT',
449
- 'VIR_FROM_SYSINFO',
450
- 'VIR_FROM_STREAMS',
451
- 'VIR_FROM_XENAPI',
452
- 'VIR_FROM_HOOK',
453
- 'VIR_ERR_HOOK_SCRIPT_FAILED',
454
- 'VIR_ERR_MIGRATE_PERSIST_FAILED',
455
- 'VIR_ERR_OPERATION_TIMEOUT',
456
- 'VIR_ERR_CONFIG_UNSUPPORTED',
457
- 'VIR_FROM_XENXM',
458
- 'VIR_ERR_OPERATION_INVALID',
459
- 'VIR_ERR_NO_SECURITY_MODEL',
460
- 'VIR_ERR_AUTH_FAILED',
461
- 'VIR_FROM_PHYP',
462
- 'VIR_FROM_ESX',
463
- 'VIR_FROM_ONE',
464
- 'VIR_FROM_VBOX',
465
- 'VIR_FROM_LXC',
466
- 'VIR_FROM_UML',
467
- 'VIR_FROM_NETWORK',
468
- 'VIR_FROM_DOMAIN',
469
- 'VIR_FROM_STATS_LINUX',
470
- 'VIR_FROM_XEN_INOTIFY',
471
- 'VIR_FROM_SECURITY',
472
- 'VIR_DOMAIN_CORE_DUMP_FORMAT_RAW',
473
- 'VIR_DOMAIN_CORE_DUMP_FORMAT_KDUMP_ZLIB',
474
- 'VIR_DOMAIN_CORE_DUMP_FORMAT_KDUMP_LZO',
475
- 'VIR_DOMAIN_CORE_DUMP_FORMAT_KDUMP_SNAPPY',
476
- 'VIR_MIGRATE_AUTO_CONVERGE',
477
- 'VIR_MIGRATE_RDMA_PIN_ALL',
478
- 'VIR_DOMAIN_SHUTDOWN_PARAVIRT',
479
- 'VIR_DOMAIN_REBOOT_PARAVIRT',
480
- ]
481
-
482
- libvirt_qemu_consts = [
483
- 'VIR_DOMAIN_QEMU_AGENT_COMMAND_BLOCK',
484
- 'VIR_DOMAIN_QEMU_AGENT_COMMAND_DEFAULT',
485
- 'VIR_DOMAIN_QEMU_AGENT_COMMAND_NOWAIT',
486
- 'VIR_DOMAIN_QEMU_MONITOR_COMMAND_DEFAULT',
487
- 'VIR_DOMAIN_QEMU_MONITOR_COMMAND_HMP',
488
- ]
489
-
490
- libvirt_types.each { |t| have_type(t, "libvirt/libvirt.h") }
491
- libvirt_funcs.each { |f| have_func(f, "libvirt/libvirt.h") }
492
- libvirt_consts.each { |c| have_const(c, ["libvirt/libvirt.h"]) }
493
- virterror_consts.each { |c| have_const(c, ["libvirt/virterror.h"]) }
494
- if find_header("libvirt/libvirt-qemu.h")
495
- have_library("virt-qemu", "virDomainQemuMonitorCommand")
496
- libvirt_qemu_funcs.each { |f| have_func(f, "libvirt/libvirt-qemu.h") }
497
- libvirt_qemu_consts.each { |c| have_const(c, ["libvirt/libvirt-qemu.h"]) }
13
+ unless pkg_config("libvirt-qemu")
14
+ raise "libvirt library not found in default locations"
498
15
  end
499
16
 
500
- if find_header("libvirt/libvirt-lxc.h")
501
- have_library("virt-lxc", "virDomainLxcOpenNamespace")
502
- libvirt_lxc_funcs.each{ |f| have_func(f, "libvirt/libvirt-lxc.h") }
17
+ unless pkg_config("libvirt-lxc")
18
+ raise "libvirt library not found in default locations"
503
19
  end
504
20
 
505
21
  create_header
@@ -26,7 +26,6 @@
26
26
  #include "connect.h"
27
27
  #include "extconf.h"
28
28
 
29
- #if HAVE_TYPE_VIRINTERFACEPTR
30
29
  static VALUE c_interface;
31
30
 
32
31
  static void interface_free(void *i)
@@ -48,7 +47,7 @@ VALUE ruby_libvirt_interface_new(virInterfacePtr i, VALUE conn)
48
47
  * call-seq:
49
48
  * interface.undefine -> nil
50
49
  *
51
- * Call virInterfaceUndefine[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceUndefine]
50
+ * Call virInterfaceUndefine[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceUndefine]
52
51
  * to undefine this interface.
53
52
  */
54
53
  static VALUE libvirt_interface_undefine(VALUE i)
@@ -62,7 +61,7 @@ static VALUE libvirt_interface_undefine(VALUE i)
62
61
  * call-seq:
63
62
  * interface.create(flags=0) -> nil
64
63
  *
65
- * Call virInterfaceCreate[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceCreate]
64
+ * Call virInterfaceCreate[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceCreate]
66
65
  * to start this interface.
67
66
  */
68
67
  static VALUE libvirt_interface_create(int argc, VALUE *argv, VALUE i)
@@ -81,7 +80,7 @@ static VALUE libvirt_interface_create(int argc, VALUE *argv, VALUE i)
81
80
  * call-seq:
82
81
  * interface.destroy(flags=0) -> nil
83
82
  *
84
- * Call virInterfaceDestroy[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceDestroy]
83
+ * Call virInterfaceDestroy[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceDestroy]
85
84
  * to shutdown this interface.
86
85
  */
87
86
  static VALUE libvirt_interface_destroy(int argc, VALUE *argv, VALUE i)
@@ -96,12 +95,11 @@ static VALUE libvirt_interface_destroy(int argc, VALUE *argv, VALUE i)
96
95
  ruby_libvirt_value_to_uint(flags));
97
96
  }
98
97
 
99
- #if HAVE_VIRINTERFACEISACTIVE
100
98
  /*
101
99
  * call-seq:
102
100
  * interface.active? -> [true|false]
103
101
  *
104
- * Call virInterfaceIsActive[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceIsActive]
102
+ * Call virInterfaceIsActive[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceIsActive]
105
103
  * to determine if this interface is currently active.
106
104
  */
107
105
  static VALUE libvirt_interface_active_p(VALUE p)
@@ -110,13 +108,12 @@ static VALUE libvirt_interface_active_p(VALUE p)
110
108
  ruby_libvirt_connect_get(p),
111
109
  interface_get(p));
112
110
  }
113
- #endif
114
111
 
115
112
  /*
116
113
  * call-seq:
117
114
  * interface.name -> String
118
115
  *
119
- * Call virInterfaceGetName[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetName]
116
+ * Call virInterfaceGetName[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetName]
120
117
  * to retrieve the name of this interface.
121
118
  */
122
119
  static VALUE libvirt_interface_name(VALUE i)
@@ -130,7 +127,7 @@ static VALUE libvirt_interface_name(VALUE i)
130
127
  * call-seq:
131
128
  * interface.mac -> String
132
129
  *
133
- * Call virInterfaceGetMACString[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetMACString]
130
+ * Call virInterfaceGetMACString[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetMACString]
134
131
  * to retrieve the MAC address of this interface.
135
132
  */
136
133
  static VALUE libvirt_interface_mac(VALUE i)
@@ -144,7 +141,7 @@ static VALUE libvirt_interface_mac(VALUE i)
144
141
  * call-seq:
145
142
  * interface.xml_desc -> String
146
143
  *
147
- * Call virInterfaceGetXMLDesc[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetXMLDesc]
144
+ * Call virInterfaceGetXMLDesc[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetXMLDesc]
148
145
  * to retrieve the XML of this interface.
149
146
  */
150
147
  static VALUE libvirt_interface_xml_desc(int argc, VALUE *argv, VALUE i)
@@ -163,26 +160,22 @@ static VALUE libvirt_interface_xml_desc(int argc, VALUE *argv, VALUE i)
163
160
  * call-seq:
164
161
  * interface.free -> nil
165
162
  *
166
- * Call virInterfaceFree[http://www.libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceFree]
163
+ * Call virInterfaceFree[https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceFree]
167
164
  * to free this interface. The object will no longer be valid after this call.
168
165
  */
169
166
  static VALUE libvirt_interface_free(VALUE i)
170
167
  {
171
168
  ruby_libvirt_generate_call_free(Interface, i);
172
169
  }
173
- #endif
174
170
 
175
171
  /*
176
172
  * Class Libvirt::Interface
177
173
  */
178
174
  void ruby_libvirt_interface_init(void)
179
175
  {
180
- #if HAVE_TYPE_VIRINTERFACEPTR
181
176
  c_interface = rb_define_class_under(m_libvirt, "Interface", rb_cObject);
182
- #if HAVE_CONST_VIR_INTERFACE_XML_INACTIVE
183
177
  rb_define_const(c_interface, "XML_INACTIVE",
184
178
  INT2NUM(VIR_INTERFACE_XML_INACTIVE));
185
- #endif
186
179
  rb_define_attr(c_interface, "connection", 1, 0);
187
180
 
188
181
  /* Interface object methods */
@@ -193,8 +186,5 @@ void ruby_libvirt_interface_init(void)
193
186
  rb_define_method(c_interface, "create", libvirt_interface_create, -1);
194
187
  rb_define_method(c_interface, "destroy", libvirt_interface_destroy, -1);
195
188
  rb_define_method(c_interface, "free", libvirt_interface_free, 0);
196
- #if HAVE_VIRINTERFACEISACTIVE
197
189
  rb_define_method(c_interface, "active?", libvirt_interface_active_p, 0);
198
- #endif
199
- #endif
200
190
  }