visualC-config.rb - libcdio.git - libcdio

index : libcdio.git
libcdio
summary refs log tree commit diff
path: root/visualC-config.rb
blob: e761180610c0066af75081c17f2d9e5e33786885 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/usr/bin/env ruby
# Alternative configuration for Visual C written in Ruby.
ABS_TOP_SRCDIR = File.dirname(__FILE__)
# Text substitutions performed on files
SUBST = {
 # Put in what you want for the build string.
 :build => ARGV[0] || 'pc-windows-visualstudio',
 :abs_top_srcdir => ABS_TOP_SRCDIR.dup,
 :abs_top_builddir => ABS_TOP_SRCDIR.dup,
 :native_abs_top_srcdir => File.expand_path(ABS_TOP_SRCDIR),
 :LIBCDIO_SOURCE_PATH => File.expand_path(ABS_TOP_SRCDIR)
}
# Get substitution information from configure.ac
def extract_from_configure_ac
 config_file = File.dirname(__FILE__) + '/configure.ac'
 lines = File.readlines(config_file)
 relnum_regexp = Regexp.new('^define\(RELEASE_NUM, (\d+)')
 relnum_line = lines.grep(relnum_regexp)
 if relnum_line.size != 1
 if relnum.size > 1
 STDERR.puts("Multiple define(RELEASE_NUM, ...) in #{config_file}")
 else
 STDERR.puts("Can't find define(RELEASE_NUM, ...) in #{config_file}")
 end
 exit 1
 end
 if relnum_line[0] !~ relnum_regexp
 STDERR.puts("Something went wrong in matching release number in #{config_file}")
 exit 2
 end
 SUBST[:LIBCDIO_VERSION_NUM] = 1ドル
 SUBST[:VERSION] = "0.#{1ドル}"
 ac_init_regexp = Regexp.new('^AC_INIT\(\[(.+?)\]')
 ac_init_line = lines.grep(ac_init_regexp)
 if ac_init_line.size != 1
 if ac_init_line.size > 1
 STDERR.puts("Multiple AC_INIT in #{config_file}")
 else
 STDERR.puts("Can't find AC_INIT([...],) in #{config_file}")
 end
 exit 2
 end
 if ac_init_line[0] !~ ac_init_regexp
 STDERR.puts("Something went wrong in getting package name #{config_file}")
 exit 3
 end
 SUBST[:PACKAGE] = 1ドル
end
# Write #{filename} from #{filename}.in and SUBST
def perform_substitutions(filename)
 builddir = SUBST[:abs_top_builddir]
 version_file = builddir + '/' + filename
 version_file_template = version_file + '.in'
 text = File.read(version_file_template)
 SUBST.each do |key, val|
 from_str = "@#{key.to_s}@"
 text.gsub!(from_str, val)
 end
 File.open(version_file, 'w') { |f| f.write(text) }
end
extract_from_configure_ac
%w(include/cdio/version.h
 test/testgetdevices.c test/testisocd2.c 		test/testisocd_joliet.c
 test/driver/bincue.c test/driver/track.c		test/testisocd_joliet.c
 test/driver/cdrdao.c test/testgetdevices.c	test/testpregap.c
 test/driver/nrg.c	 test/testisocd2.c
 test/testpregap.c doc/doxygen/Doxyfile
).each do |file|
 perform_substitutions(file)
end
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月05日 18:42:46 +0000

AltStyle によって変換されたページ (->オリジナル) /