rice 2.1.3 → 4.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +121 -0
- data/CONTRIBUTORS.md +19 -0
- data/COPYING +2 -2
- data/Gemfile +3 -0
- data/README.md +45 -1028
- data/Rakefile +95 -12
- data/include/rice/rice.hpp +7766 -0
- data/include/rice/stl.hpp +1113 -0
- data/lib/mkmf-rice.rb +127 -0
- data/lib/version.rb +3 -0
- data/rice/Address_Registration_Guard.ipp +75 -32
- data/rice/Address_Registration_Guard_defn.hpp +60 -56
- data/rice/Arg.hpp +80 -4
- data/rice/Arg.ipp +51 -0
- data/rice/Constructor.hpp +30 -376
- data/rice/Data_Object.ipp +234 -107
- data/rice/Data_Object_defn.hpp +77 -117
- data/rice/Data_Type.hpp +1 -2
- data/rice/Data_Type.ipp +251 -295
- data/rice/Data_Type_defn.hpp +175 -243
- data/rice/Director.hpp +14 -9
- data/rice/Enum.hpp +54 -104
- data/rice/Enum.ipp +104 -230
- data/rice/Exception.hpp +2 -8
- data/rice/Exception.ipp +65 -0
- data/rice/Exception_defn.hpp +46 -47
- data/rice/Identifier.hpp +28 -28
- data/rice/Identifier.ipp +23 -27
- data/rice/Return.hpp +39 -0
- data/rice/Return.ipp +33 -0
- data/rice/detail/Exception_Handler.ipp +22 -62
- data/rice/detail/Exception_Handler_defn.hpp +76 -91
- data/rice/detail/Iterator.hpp +18 -88
- data/rice/detail/Iterator.ipp +47 -0
- data/rice/detail/Jump_Tag.hpp +21 -0
- data/rice/detail/MethodInfo.hpp +44 -0
- data/rice/detail/MethodInfo.ipp +78 -0
- data/rice/detail/NativeAttribute.hpp +53 -0
- data/rice/detail/NativeAttribute.ipp +83 -0
- data/rice/detail/NativeFunction.hpp +69 -0
- data/rice/detail/NativeFunction.ipp +248 -0
- data/rice/detail/RubyFunction.hpp +39 -0
- data/rice/detail/RubyFunction.ipp +92 -0
- data/rice/detail/Type.hpp +29 -0
- data/rice/detail/Type.ipp +138 -0
- data/rice/detail/TypeRegistry.hpp +50 -0
- data/rice/detail/TypeRegistry.ipp +106 -0
- data/rice/detail/Wrapper.hpp +51 -0
- data/rice/detail/Wrapper.ipp +151 -0
- data/rice/detail/default_allocation_func.hpp +8 -19
- data/rice/detail/default_allocation_func.ipp +9 -8
- data/rice/detail/from_ruby.hpp +2 -37
- data/rice/detail/from_ruby.ipp +1020 -46
- data/rice/detail/from_ruby_defn.hpp +38 -0
- data/rice/detail/function_traits.hpp +124 -0
- data/rice/detail/method_data.hpp +23 -15
- data/rice/detail/method_data.ipp +53 -0
- data/rice/detail/rice_traits.hpp +116 -0
- data/rice/detail/ruby.hpp +9 -50
- data/rice/detail/to_ruby.hpp +3 -17
- data/rice/detail/to_ruby.ipp +409 -31
- data/rice/detail/to_ruby_defn.hpp +48 -0
- data/rice/forward_declares.ipp +82 -0
- data/rice/global_function.hpp +16 -20
- data/rice/global_function.ipp +8 -17
- data/rice/rice.hpp +59 -0
- data/rice/ruby_mark.hpp +5 -3
- data/rice/ruby_try_catch.hpp +4 -4
- data/rice/stl.hpp +11 -0
- data/sample/callbacks/extconf.rb +6 -0
- data/sample/callbacks/sample_callbacks.cpp +35 -0
- data/sample/callbacks/test.rb +28 -0
- data/sample/enum/extconf.rb +3 -0
- data/sample/enum/sample_enum.cpp +3 -17
- data/sample/enum/test.rb +2 -2
- data/sample/inheritance/animals.cpp +8 -24
- data/sample/inheritance/extconf.rb +3 -0
- data/sample/inheritance/test.rb +1 -1
- data/sample/map/extconf.rb +3 -0
- data/sample/map/map.cpp +10 -18
- data/sample/map/test.rb +1 -1
- data/test/embed_ruby.cpp +34 -0
- data/test/embed_ruby.hpp +4 -0
- data/test/ext/t1/extconf.rb +3 -0
- data/test/ext/t1/t1.cpp +1 -3
- data/test/ext/t2/extconf.rb +3 -0
- data/test/ext/t2/t2.cpp +1 -1
- data/test/extconf.rb +23 -0
- data/test/ruby/test_callbacks_sample.rb +28 -0
- data/test/ruby/test_multiple_extensions.rb +18 -0
- data/test/ruby/test_multiple_extensions_same_class.rb +14 -0
- data/test/ruby/test_multiple_extensions_with_inheritance.rb +20 -0
- data/test/test_Address_Registration_Guard.cpp +25 -11
- data/test/test_Array.cpp +131 -74
- data/test/test_Attribute.cpp +147 -0
- data/test/test_Builtin_Object.cpp +36 -15
- data/test/test_Class.cpp +151 -276
- data/test/test_Constructor.cpp +10 -9
- data/test/test_Data_Object.cpp +135 -193
- data/test/test_Data_Type.cpp +323 -252
- data/test/test_Director.cpp +56 -42
- data/test/test_Enum.cpp +230 -104
- data/test/test_Exception.cpp +7 -7
- data/test/test_Hash.cpp +33 -31
- data/test/test_Identifier.cpp +6 -6
- data/test/test_Inheritance.cpp +221 -0
- data/test/test_Iterator.cpp +161 -0
- data/test/test_Jump_Tag.cpp +1 -1
- data/test/test_Keep_Alive.cpp +161 -0
- data/test/test_Memory_Management.cpp +4 -5
- data/test/test_Module.cpp +169 -111
- data/test/test_Object.cpp +51 -19
- data/test/test_Ownership.cpp +275 -0
- data/test/test_Self.cpp +205 -0
- data/test/test_Stl_Optional.cpp +90 -0
- data/test/test_Stl_Pair.cpp +144 -0
- data/test/test_Stl_SmartPointer.cpp +200 -0
- data/test/test_Stl_String.cpp +74 -0
- data/test/test_Stl_Vector.cpp +652 -0
- data/test/test_String.cpp +3 -3
- data/test/test_Struct.cpp +31 -40
- data/test/test_Symbol.cpp +3 -3
- data/test/test_To_From_Ruby.cpp +283 -218
- data/test/test_global_functions.cpp +41 -20
- data/test/unittest.cpp +34 -8
- data/test/unittest.hpp +0 -4
- metadata +121 -136
- data/Doxyfile +0 -2268
- data/Makefile.am +0 -26
- data/Makefile.in +0 -923
- data/README.mingw +0 -8
- data/aclocal.m4 +0 -1088
- data/bootstrap +0 -8
- data/check_stdcxx_11.ac +0 -103
- data/config.guess +0 -1421
- data/config.sub +0 -1807
- data/configure +0 -7367
- data/configure.ac +0 -55
- data/depcomp +0 -791
- data/doxygen.ac +0 -314
- data/doxygen.am +0 -186
- data/extconf.rb +0 -69
- data/install-sh +0 -501
- data/missing +0 -215
- data/post-autoconf.rb +0 -22
- data/post-automake.rb +0 -28
- data/rice/Address_Registration_Guard.cpp +0 -22
- data/rice/Arg_impl.hpp +0 -129
- data/rice/Arg_operators.cpp +0 -21
- data/rice/Arg_operators.hpp +0 -19
- data/rice/Array.hpp +0 -214
- data/rice/Array.ipp +0 -256
- data/rice/Builtin_Object.hpp +0 -8
- data/rice/Builtin_Object.ipp +0 -50
- data/rice/Builtin_Object_defn.hpp +0 -50
- data/rice/Class.cpp +0 -57
- data/rice/Class.hpp +0 -8
- data/rice/Class.ipp +0 -6
- data/rice/Class_defn.hpp +0 -83
- data/rice/Data_Type.cpp +0 -54
- data/rice/Data_Type_fwd.hpp +0 -12
- data/rice/Director.cpp +0 -13
- data/rice/Exception.cpp +0 -59
- data/rice/Exception_Base.hpp +0 -8
- data/rice/Exception_Base.ipp +0 -13
- data/rice/Exception_Base_defn.hpp +0 -27
- data/rice/Hash.hpp +0 -227
- data/rice/Hash.ipp +0 -329
- data/rice/Identifier.cpp +0 -8
- data/rice/Jump_Tag.hpp +0 -24
- data/rice/Makefile.am +0 -125
- data/rice/Makefile.in +0 -888
- data/rice/Module.cpp +0 -84
- data/rice/Module.hpp +0 -8
- data/rice/Module.ipp +0 -6
- data/rice/Module_defn.hpp +0 -88
- data/rice/Module_impl.hpp +0 -281
- data/rice/Module_impl.ipp +0 -345
- data/rice/Object.cpp +0 -169
- data/rice/Object.hpp +0 -8
- data/rice/Object.ipp +0 -19
- data/rice/Object_defn.hpp +0 -191
- data/rice/Require_Guard.hpp +0 -21
- data/rice/String.cpp +0 -94
- data/rice/String.hpp +0 -91
- data/rice/Struct.cpp +0 -117
- data/rice/Struct.hpp +0 -162
- data/rice/Struct.ipp +0 -26
- data/rice/Symbol.cpp +0 -25
- data/rice/Symbol.hpp +0 -66
- data/rice/Symbol.ipp +0 -44
- data/rice/config.hpp +0 -47
- data/rice/config.hpp.in +0 -46
- data/rice/detail/Arguments.hpp +0 -118
- data/rice/detail/Auto_Function_Wrapper.hpp +0 -898
- data/rice/detail/Auto_Function_Wrapper.ipp +0 -3694
- data/rice/detail/Auto_Member_Function_Wrapper.hpp +0 -897
- data/rice/detail/Auto_Member_Function_Wrapper.ipp +0 -2774
- data/rice/detail/Caster.hpp +0 -103
- data/rice/detail/Not_Copyable.hpp +0 -25
- data/rice/detail/Wrapped_Function.hpp +0 -33
- data/rice/detail/cfp.hpp +0 -24
- data/rice/detail/cfp.ipp +0 -51
- data/rice/detail/check_ruby_type.cpp +0 -27
- data/rice/detail/check_ruby_type.hpp +0 -23
- data/rice/detail/creation_funcs.hpp +0 -37
- data/rice/detail/creation_funcs.ipp +0 -36
- data/rice/detail/define_method_and_auto_wrap.hpp +0 -31
- data/rice/detail/define_method_and_auto_wrap.ipp +0 -30
- data/rice/detail/demangle.cpp +0 -56
- data/rice/detail/demangle.hpp +0 -19
- data/rice/detail/env.hpp +0 -11
- data/rice/detail/method_data.cpp +0 -86
- data/rice/detail/node.hpp +0 -13
- data/rice/detail/object_call.hpp +0 -69
- data/rice/detail/object_call.ipp +0 -131
- data/rice/detail/protect.cpp +0 -29
- data/rice/detail/protect.hpp +0 -34
- data/rice/detail/ruby_version_code.hpp +0 -6
- data/rice/detail/ruby_version_code.hpp.in +0 -6
- data/rice/detail/st.hpp +0 -22
- data/rice/detail/traits.hpp +0 -43
- data/rice/detail/win32.hpp +0 -16
- data/rice/detail/wrap_function.hpp +0 -341
- data/rice/detail/wrap_function.ipp +0 -514
- data/rice/protect.hpp +0 -92
- data/rice/protect.ipp +0 -1134
- data/rice/rubypp.rb +0 -97
- data/rice/to_from_ruby.hpp +0 -8
- data/rice/to_from_ruby.ipp +0 -294
- data/rice/to_from_ruby_defn.hpp +0 -70
- data/ruby.ac +0 -135
- data/ruby/Makefile.am +0 -1
- data/ruby/Makefile.in +0 -628
- data/ruby/lib/Makefile.am +0 -3
- data/ruby/lib/Makefile.in +0 -506
- data/ruby/lib/mkmf-rice.rb.in +0 -217
- data/ruby/lib/version.rb +0 -3
- data/sample/Makefile.am +0 -47
- data/sample/Makefile.in +0 -489
- data/test/Makefile.am +0 -72
- data/test/Makefile.in +0 -1213
- data/test/ext/Makefile.am +0 -41
- data/test/ext/Makefile.in +0 -483
- data/test/test_rice.rb +0 -41
data/doxygen.ac
DELETED
@@ -1,314 +0,0 @@
|
|
1
|
-
# This file is part of Autoconf. -*- Autoconf -*-
|
2
|
-
|
3
|
-
# Copyright (C) 2004 Oren Ben-Kiki
|
4
|
-
# This file is distributed under the same terms as the Autoconf macro files.
|
5
|
-
|
6
|
-
# Generate automatic documentation using Doxygen. Works in concert with the
|
7
|
-
# aminclude.m4 file and a compatible doxygen configuration file. Defines the
|
8
|
-
# following public macros:
|
9
|
-
#
|
10
|
-
# DX_???_FEATURE(ON|OFF) - control the default setting fo a Doxygen feature.
|
11
|
-
# Supported features are 'DOXYGEN' itself, 'DOT' for generating graphics,
|
12
|
-
# 'HTML' for plain HTML, 'CHM' for compressed HTML help (for MS users), 'CHI'
|
13
|
-
# for generating a seperate .chi file by the .chm file, and 'MAN', 'RTF',
|
14
|
-
# 'XML', 'PDF' and 'PS' for the appropriate output formats. The environment
|
15
|
-
# variable DOXYGEN_PAPER_SIZE may be specified to override the default 'a4wide'
|
16
|
-
# paper size.
|
17
|
-
#
|
18
|
-
# By default, HTML, PDF and PS documentation is generated as this seems to be
|
19
|
-
# the most popular and portable combination. MAN pages created by Doxygen are
|
20
|
-
# usually problematic, though by picking an appropriate subset and doing some
|
21
|
-
# massaging they might be better than nothing. CHM and RTF are specific for MS
|
22
|
-
# (note that you can't generate both HTML and CHM at the same time). The XML is
|
23
|
-
# rather useless unless you apply specialized post-processing to it.
|
24
|
-
#
|
25
|
-
# The macro mainly controls the default state of the feature. The use can
|
26
|
-
# override the default by specifying --enable or --disable. The macros ensure
|
27
|
-
# that contradictory flags are not given (e.g., --enable-doxygen-html and
|
28
|
-
# --enable-doxygen-chm, --enable-doxygen-anything with --disable-doxygen, etc.)
|
29
|
-
# Finally, each feature will be automatically disabled (with a warning) if the
|
30
|
-
# required programs are missing.
|
31
|
-
#
|
32
|
-
# Once all the feature defaults have been specified, call DX_INIT_DOXYGEN with
|
33
|
-
# the following parameters: a one-word name for the project for use as a
|
34
|
-
# filename base etc., an optional configuration file name (the default is
|
35
|
-
# 'Doxyfile', the same as Doxygen's default), and an optional output directory
|
36
|
-
# name (the default is 'doxygen-doc').
|
37
|
-
|
38
|
-
## ----------##
|
39
|
-
## Defaults. ##
|
40
|
-
## ----------##
|
41
|
-
|
42
|
-
DX_ENV=""
|
43
|
-
AC_DEFUN([DX_FEATURE_doc], ON)
|
44
|
-
AC_DEFUN([DX_FEATURE_dot], ON)
|
45
|
-
AC_DEFUN([DX_FEATURE_man], OFF)
|
46
|
-
AC_DEFUN([DX_FEATURE_html], ON)
|
47
|
-
AC_DEFUN([DX_FEATURE_chm], OFF)
|
48
|
-
AC_DEFUN([DX_FEATURE_chi], OFF)
|
49
|
-
AC_DEFUN([DX_FEATURE_rtf], OFF)
|
50
|
-
AC_DEFUN([DX_FEATURE_xml], OFF)
|
51
|
-
AC_DEFUN([DX_FEATURE_pdf], ON)
|
52
|
-
AC_DEFUN([DX_FEATURE_ps], ON)
|
53
|
-
|
54
|
-
## --------------- ##
|
55
|
-
## Private macros. ##
|
56
|
-
## --------------- ##
|
57
|
-
|
58
|
-
# DX_ENV_APPEND(VARIABLE, VALUE)
|
59
|
-
# ------------------------------
|
60
|
-
# Append VARIABLE="VALUE" to DX_ENV for invoking doxygen.
|
61
|
-
AC_DEFUN([DX_ENV_APPEND], [AC_SUBST([DX_ENV], ["$DX_ENV $1='$2'"])])
|
62
|
-
|
63
|
-
# DX_DIRNAME_EXPR
|
64
|
-
# ---------------
|
65
|
-
# Expand into a shell expression prints the directory part of a path.
|
66
|
-
AC_DEFUN([DX_DIRNAME_EXPR],
|
67
|
-
[[expr ".$1" : '\(\.\)[^/]*$' \| "x$1" : 'x\(.*\)/[^/]*$']])
|
68
|
-
|
69
|
-
# DX_IF_FEATURE(FEATURE, IF-ON, IF-OFF)
|
70
|
-
# -------------------------------------
|
71
|
-
# Expands according to the M4 (static) status of the feature.
|
72
|
-
AC_DEFUN([DX_IF_FEATURE], [ifelse(DX_FEATURE_$1, ON, [$2], [$3])])
|
73
|
-
|
74
|
-
# DX_REQUIRE_PROG(VARIABLE, PROGRAM)
|
75
|
-
# ----------------------------------
|
76
|
-
# Require the specified program to be found for the DX_CURRENT_FEATURE to work.
|
77
|
-
AC_DEFUN([DX_REQUIRE_PROG], [
|
78
|
-
AC_PATH_TOOL([$1], [$2])
|
79
|
-
if test "$DX_FLAG_[]DX_CURRENT_FEATURE$$1" = 1; then
|
80
|
-
AC_MSG_WARN([$2 not found - will not DX_CURRENT_DESCRIPTION])
|
81
|
-
AC_SUBST([DX_FLAG_]DX_CURRENT_FEATURE, 0)
|
82
|
-
fi
|
83
|
-
])
|
84
|
-
|
85
|
-
# DX_TEST_FEATURE(FEATURE)
|
86
|
-
# ------------------------
|
87
|
-
# Expand to a shell expression testing whether the feature is active.
|
88
|
-
AC_DEFUN([DX_TEST_FEATURE], [test "$DX_FLAG_$1" = 1])
|
89
|
-
|
90
|
-
# DX_CHECK_DEPEND(REQUIRED_FEATURE, REQUIRED_STATE)
|
91
|
-
# -------------------------------------------------
|
92
|
-
# Verify that a required features has the right state before trying to turn on
|
93
|
-
# the DX_CURRENT_FEATURE.
|
94
|
-
AC_DEFUN([DX_CHECK_DEPEND], [
|
95
|
-
test "$DX_FLAG_$1" = "$2" \
|
96
|
-
|| AC_MSG_ERROR([doxygen-DX_CURRENT_FEATURE ifelse([$2], 1,
|
97
|
-
requires, contradicts) doxygen-DX_CURRENT_FEATURE])
|
98
|
-
])
|
99
|
-
|
100
|
-
# DX_CLEAR_DEPEND(FEATURE, REQUIRED_FEATURE, REQUIRED_STATE)
|
101
|
-
# ----------------------------------------------------------
|
102
|
-
# Turn off the DX_CURRENT_FEATURE if the required feature is off.
|
103
|
-
AC_DEFUN([DX_CLEAR_DEPEND], [
|
104
|
-
test "$DX_FLAG_$1" = "$2" || AC_SUBST([DX_FLAG_]DX_CURRENT_FEATURE, 0)
|
105
|
-
])
|
106
|
-
|
107
|
-
# DX_FEATURE_ARG(FEATURE, DESCRIPTION,
|
108
|
-
# CHECK_DEPEND, CLEAR_DEPEND,
|
109
|
-
# REQUIRE, DO-IF-ON, DO-IF-OFF)
|
110
|
-
# --------------------------------------------
|
111
|
-
# Parse the command-line option controlling a feature. CHECK_DEPEND is called
|
112
|
-
# if the user explicitly turns the feature on (and invokes DX_CHECK_DEPEND),
|
113
|
-
# otherwise CLEAR_DEPEND is called to turn off the default state if a required
|
114
|
-
# feature is disabled (using DX_CLEAR_DEPEND). REQUIRE performs additional
|
115
|
-
# requirement tests (DX_REQUIRE_PROG). Finally, an automake flag is set and
|
116
|
-
# DO-IF-ON or DO-IF-OFF are called according to the final state of the feature.
|
117
|
-
AC_DEFUN([DX_ARG_ABLE], [
|
118
|
-
AC_DEFUN([DX_CURRENT_FEATURE], [$1])
|
119
|
-
AC_DEFUN([DX_CURRENT_DESCRIPTION], [$2])
|
120
|
-
AC_ARG_ENABLE(doxygen-$1,
|
121
|
-
[AC_HELP_STRING(DX_IF_FEATURE([$1], [--disable-doxygen-$1],
|
122
|
-
[--enable-doxygen-$1]),
|
123
|
-
DX_IF_FEATURE([$1], [don't $2], [$2]))],
|
124
|
-
[
|
125
|
-
case "$enableval" in
|
126
|
-
#(
|
127
|
-
y|Y|yes|Yes|YES)
|
128
|
-
AC_SUBST([DX_FLAG_$1], 1)
|
129
|
-
$3
|
130
|
-
;; #(
|
131
|
-
n|N|no|No|NO)
|
132
|
-
AC_SUBST([DX_FLAG_$1], 0)
|
133
|
-
;; #(
|
134
|
-
*)
|
135
|
-
AC_MSG_ERROR([invalid value '$enableval' given to doxygen-$1])
|
136
|
-
;;
|
137
|
-
esac
|
138
|
-
], [
|
139
|
-
AC_SUBST([DX_FLAG_$1], [DX_IF_FEATURE([$1], 1, 0)])
|
140
|
-
$4
|
141
|
-
])
|
142
|
-
if DX_TEST_FEATURE([$1]); then
|
143
|
-
$5
|
144
|
-
:
|
145
|
-
fi
|
146
|
-
if DX_TEST_FEATURE([$1]); then
|
147
|
-
AM_CONDITIONAL(DX_COND_$1, :)
|
148
|
-
$6
|
149
|
-
:
|
150
|
-
else
|
151
|
-
AM_CONDITIONAL(DX_COND_$1, false)
|
152
|
-
$7
|
153
|
-
:
|
154
|
-
fi
|
155
|
-
])
|
156
|
-
|
157
|
-
## -------------- ##
|
158
|
-
## Public macros. ##
|
159
|
-
## -------------- ##
|
160
|
-
|
161
|
-
# DX_XXX_FEATURE(DEFAULT_STATE)
|
162
|
-
# -----------------------------
|
163
|
-
AC_DEFUN([DX_DOXYGEN_FEATURE], [AC_DEFUN([DX_FEATURE_doc], [$1])])
|
164
|
-
AC_DEFUN([DX_MAN_FEATURE], [AC_DEFUN([DX_FEATURE_man], [$1])])
|
165
|
-
AC_DEFUN([DX_HTML_FEATURE], [AC_DEFUN([DX_FEATURE_html], [$1])])
|
166
|
-
AC_DEFUN([DX_CHM_FEATURE], [AC_DEFUN([DX_FEATURE_chm], [$1])])
|
167
|
-
AC_DEFUN([DX_CHI_FEATURE], [AC_DEFUN([DX_FEATURE_chi], [$1])])
|
168
|
-
AC_DEFUN([DX_RTF_FEATURE], [AC_DEFUN([DX_FEATURE_rtf], [$1])])
|
169
|
-
AC_DEFUN([DX_XML_FEATURE], [AC_DEFUN([DX_FEATURE_xml], [$1])])
|
170
|
-
AC_DEFUN([DX_XML_FEATURE], [AC_DEFUN([DX_FEATURE_xml], [$1])])
|
171
|
-
AC_DEFUN([DX_PDF_FEATURE], [AC_DEFUN([DX_FEATURE_pdf], [$1])])
|
172
|
-
AC_DEFUN([DX_PS_FEATURE], [AC_DEFUN([DX_FEATURE_ps], [$1])])
|
173
|
-
|
174
|
-
# DX_INIT_DOXYGEN(PROJECT, [CONFIG-FILE], [OUTPUT-DOC-DIR])
|
175
|
-
# ---------------------------------------------------------
|
176
|
-
# PROJECT also serves as the base name for the documentation files.
|
177
|
-
# The default CONFIG-FILE is "Doxyfile" and OUTPUT-DOC-DIR is "doxygen-doc".
|
178
|
-
AC_DEFUN([DX_INIT_DOXYGEN], [
|
179
|
-
|
180
|
-
# Files:
|
181
|
-
AC_SUBST([DX_PROJECT], [$1])
|
182
|
-
AC_SUBST([DX_CONFIG], [ifelse([$2], [], Doxyfile, [$2])])
|
183
|
-
AC_SUBST([DX_DOCDIR], [ifelse([$3], [], doxygen-doc, [$3])])
|
184
|
-
|
185
|
-
# Environment variables used inside doxygen.cfg:
|
186
|
-
DX_ENV_APPEND(SRCDIR, $srcdir)
|
187
|
-
DX_ENV_APPEND(PROJECT, $DX_PROJECT)
|
188
|
-
DX_ENV_APPEND(DOCDIR, $DX_DOCDIR)
|
189
|
-
DX_ENV_APPEND(VERSION, $PACKAGE_VERSION)
|
190
|
-
|
191
|
-
# Doxygen itself:
|
192
|
-
DX_ARG_ABLE(doc, [generate any doxygen documentation],
|
193
|
-
[],
|
194
|
-
[],
|
195
|
-
[DX_REQUIRE_PROG([DX_DOXYGEN], doxygen)
|
196
|
-
DX_REQUIRE_PROG([DX_PERL], perl)],
|
197
|
-
[DX_ENV_APPEND(PERL_PATH, $DX_PERL)])
|
198
|
-
|
199
|
-
# Dot for graphics:
|
200
|
-
DX_ARG_ABLE(dot, [generate graphics for doxygen documentation],
|
201
|
-
[DX_CHECK_DEPEND(doc, 1)],
|
202
|
-
[DX_CLEAR_DEPEND(doc, 1)],
|
203
|
-
[DX_REQUIRE_PROG([DX_DOT], dot)],
|
204
|
-
[DX_ENV_APPEND(HAVE_DOT, YES)
|
205
|
-
DX_ENV_APPEND(DOT_PATH, [`DX_DIRNAME_EXPR($DX_DOT)`])],
|
206
|
-
[DX_ENV_APPEND(HAVE_DOT, NO)])
|
207
|
-
|
208
|
-
# Man pages generation:
|
209
|
-
DX_ARG_ABLE(man, [generate doxygen manual pages],
|
210
|
-
[DX_CHECK_DEPEND(doc, 1)],
|
211
|
-
[DX_CLEAR_DEPEND(doc, 1)],
|
212
|
-
[],
|
213
|
-
[DX_ENV_APPEND(GENERATE_MAN, YES)],
|
214
|
-
[DX_ENV_APPEND(GENERATE_MAN, NO)])
|
215
|
-
|
216
|
-
# RTF file generation:
|
217
|
-
DX_ARG_ABLE(rtf, [generate doxygen RTF documentation],
|
218
|
-
[DX_CHECK_DEPEND(doc, 1)],
|
219
|
-
[DX_CLEAR_DEPEND(doc, 1)],
|
220
|
-
[],
|
221
|
-
[DX_ENV_APPEND(GENERATE_RTF, YES)],
|
222
|
-
[DX_ENV_APPEND(GENERATE_RTF, NO)])
|
223
|
-
|
224
|
-
# XML file generation:
|
225
|
-
DX_ARG_ABLE(xml, [generate doxygen XML documentation],
|
226
|
-
[DX_CHECK_DEPEND(doc, 1)],
|
227
|
-
[DX_CLEAR_DEPEND(doc, 1)],
|
228
|
-
[],
|
229
|
-
[DX_ENV_APPEND(GENERATE_XML, YES)],
|
230
|
-
[DX_ENV_APPEND(GENERATE_XML, NO)])
|
231
|
-
|
232
|
-
# (Compressed) HTML help generation:
|
233
|
-
DX_ARG_ABLE(chm, [generate doxygen compressed HTML help documentation],
|
234
|
-
[DX_CHECK_DEPEND(doc, 1)],
|
235
|
-
[DX_CLEAR_DEPEND(doc, 1)],
|
236
|
-
[DX_REQUIRE_PROG([DX_HHC], hhc)],
|
237
|
-
[DX_ENV_APPEND(HHC_PATH, $DX_HHC)
|
238
|
-
DX_ENV_APPEND(GENERATE_HTML, YES)
|
239
|
-
DX_ENV_APPEND(GENERATE_HTMLHELP, YES)],
|
240
|
-
[DX_ENV_APPEND(GENERATE_HTMLHELP, NO)])
|
241
|
-
|
242
|
-
# Seperate CHI file generation.
|
243
|
-
DX_ARG_ABLE(chi, [generate doxygen seperate compressed HTML help index file],
|
244
|
-
[DX_CHECK_DEPEND(chm, 1)],
|
245
|
-
[DX_CLEAR_DEPEND(chm, 1)],
|
246
|
-
[],
|
247
|
-
[DX_ENV_APPEND(GENERATE_CHI, YES)],
|
248
|
-
[DX_ENV_APPEND(GENERATE_CHI, NO)])
|
249
|
-
|
250
|
-
# Plain HTML pages generation:
|
251
|
-
DX_ARG_ABLE(html, [generate doxygen plain HTML documentation],
|
252
|
-
[DX_CHECK_DEPEND(doc, 1) DX_CHECK_DEPEND(chm, 0)],
|
253
|
-
[DX_CLEAR_DEPEND(doc, 1) DX_CLEAR_DEPEND(chm, 0)],
|
254
|
-
[],
|
255
|
-
[DX_ENV_APPEND(GENERATE_HTML, YES)],
|
256
|
-
[DX_TEST_FEATURE(chm) || DX_ENV_APPEND(GENERATE_HTML, NO)])
|
257
|
-
|
258
|
-
# PostScript file generation:
|
259
|
-
DX_ARG_ABLE(ps, [generate doxygen PostScript documentation],
|
260
|
-
[DX_CHECK_DEPEND(doc, 1)],
|
261
|
-
[DX_CLEAR_DEPEND(doc, 1)],
|
262
|
-
[DX_REQUIRE_PROG([DX_LATEX], latex)
|
263
|
-
DX_REQUIRE_PROG([DX_MAKEINDEX], makeindex)
|
264
|
-
DX_REQUIRE_PROG([DX_DVIPS], dvips)
|
265
|
-
DX_REQUIRE_PROG([DX_EGREP], egrep)])
|
266
|
-
|
267
|
-
# PDF file generation:
|
268
|
-
DX_ARG_ABLE(pdf, [generate doxygen PDF documentation],
|
269
|
-
[DX_CHECK_DEPEND(doc, 1)],
|
270
|
-
[DX_CLEAR_DEPEND(doc, 1)],
|
271
|
-
[DX_REQUIRE_PROG([DX_PDFLATEX], pdflatex)
|
272
|
-
DX_REQUIRE_PROG([DX_MAKEINDEX], makeindex)
|
273
|
-
DX_REQUIRE_PROG([DX_EGREP], egrep)])
|
274
|
-
|
275
|
-
# LaTeX generation for PS and/or PDF:
|
276
|
-
if DX_TEST_FEATURE(ps) || DX_TEST_FEATURE(pdf); then
|
277
|
-
AM_CONDITIONAL(DX_COND_latex, :)
|
278
|
-
DX_ENV_APPEND(GENERATE_LATEX, YES)
|
279
|
-
else
|
280
|
-
AM_CONDITIONAL(DX_COND_latex, false)
|
281
|
-
DX_ENV_APPEND(GENERATE_LATEX, NO)
|
282
|
-
fi
|
283
|
-
|
284
|
-
# Paper size for PS and/or PDF:
|
285
|
-
AC_ARG_VAR(DOXYGEN_PAPER_SIZE,
|
286
|
-
[a4wide (default), a4, letter, legal or executive])
|
287
|
-
case "$DOXYGEN_PAPER_SIZE" in
|
288
|
-
#(
|
289
|
-
"")
|
290
|
-
AC_SUBST(DOXYGEN_PAPER_SIZE, "")
|
291
|
-
;; #(
|
292
|
-
a4wide|a4|letter|legal|executive)
|
293
|
-
DX_ENV_APPEND(PAPER_SIZE, $DOXYGEN_PAPER_SIZE)
|
294
|
-
;; #(
|
295
|
-
*)
|
296
|
-
AC_MSG_ERROR([unknown DOXYGEN_PAPER_SIZE='$DOXYGEN_PAPER_SIZE'])
|
297
|
-
;;
|
298
|
-
esac
|
299
|
-
|
300
|
-
#For debugging:
|
301
|
-
#echo DX_FLAG_doc=$DX_FLAG_doc
|
302
|
-
#echo DX_FLAG_dot=$DX_FLAG_dot
|
303
|
-
#echo DX_FLAG_man=$DX_FLAG_man
|
304
|
-
#echo DX_FLAG_html=$DX_FLAG_html
|
305
|
-
#echo DX_FLAG_chm=$DX_FLAG_chm
|
306
|
-
#echo DX_FLAG_chi=$DX_FLAG_chi
|
307
|
-
#echo DX_FLAG_rtf=$DX_FLAG_rtf
|
308
|
-
#echo DX_FLAG_xml=$DX_FLAG_xml
|
309
|
-
#echo DX_FLAG_pdf=$DX_FLAG_pdf
|
310
|
-
#echo DX_FLAG_ps=$DX_FLAG_ps
|
311
|
-
#echo DX_ENV=$DX_ENV
|
312
|
-
])
|
313
|
-
|
314
|
-
dnl vi:ft=config
|
data/doxygen.am
DELETED
@@ -1,186 +0,0 @@
|
|
1
|
-
# Copyright (C) 2004 Oren Ben-Kiki
|
2
|
-
# This file is distributed under the same terms as the Automake macro files.
|
3
|
-
|
4
|
-
# Generate automatic documentation using Doxygen. Goals and variables values
|
5
|
-
# are controlled by the various DX_COND_??? conditionals set by autoconf.
|
6
|
-
#
|
7
|
-
# The provided goals are:
|
8
|
-
# doxygen-doc: Generate all doxygen documentation.
|
9
|
-
# doxygen-run: Run doxygen, which will generate some of the documentation
|
10
|
-
# (HTML, CHM, CHI, MAN, RTF, XML) but will not do the post
|
11
|
-
# processing required for the rest of it (PS, PDF, and some MAN).
|
12
|
-
# doxygen-man: Rename some doxygen generated man pages.
|
13
|
-
# doxygen-ps: Generate doxygen PostScript documentation.
|
14
|
-
# doxygen-pdf: Generate doxygen PDF documentation.
|
15
|
-
#
|
16
|
-
# Note that by default these are not integrated into the automake goals. If
|
17
|
-
# doxygen is used to generate man pages, you can achieve this integration by
|
18
|
-
# setting man3_MANS to the list of man pages generated and then adding the
|
19
|
-
# dependency:
|
20
|
-
#
|
21
|
-
# $(man3_MANS): doxygen-doc
|
22
|
-
#
|
23
|
-
# This will cause make to run doxygen and generate all the documentation.
|
24
|
-
#
|
25
|
-
# The following variable is intended for use in Makefile.am:
|
26
|
-
#
|
27
|
-
# DX_CLEANFILES = everything to clean.
|
28
|
-
#
|
29
|
-
# This is usually added to MOSTLYCLEANFILES.
|
30
|
-
|
31
|
-
## --------------------------------- ##
|
32
|
-
## Format-independent Doxygen rules. ##
|
33
|
-
## --------------------------------- ##
|
34
|
-
|
35
|
-
if DX_COND_doc
|
36
|
-
|
37
|
-
## ------------------------------- ##
|
38
|
-
## Rules specific for HTML output. ##
|
39
|
-
## ------------------------------- ##
|
40
|
-
|
41
|
-
if DX_COND_html
|
42
|
-
|
43
|
-
DX_CLEAN_HTML = @DX_DOCDIR@/html
|
44
|
-
|
45
|
-
endif DX_COND_html
|
46
|
-
|
47
|
-
## ------------------------------ ##
|
48
|
-
## Rules specific for CHM output. ##
|
49
|
-
## ------------------------------ ##
|
50
|
-
|
51
|
-
if DX_COND_chm
|
52
|
-
|
53
|
-
DX_CLEAN_CHM = @DX_DOCDIR@/chm
|
54
|
-
|
55
|
-
if DX_COND_chi
|
56
|
-
|
57
|
-
DX_CLEAN_CHI = @DX_DOCDIR@/@PACKAGE@.chi
|
58
|
-
|
59
|
-
endif DX_COND_chi
|
60
|
-
|
61
|
-
endif DX_COND_chm
|
62
|
-
|
63
|
-
## ------------------------------ ##
|
64
|
-
## Rules specific for MAN output. ##
|
65
|
-
## ------------------------------ ##
|
66
|
-
|
67
|
-
if DX_COND_man
|
68
|
-
|
69
|
-
DX_CLEAN_MAN = @DX_DOCDIR@/man
|
70
|
-
|
71
|
-
endif DX_COND_man
|
72
|
-
|
73
|
-
## ------------------------------ ##
|
74
|
-
## Rules specific for RTF output. ##
|
75
|
-
## ------------------------------ ##
|
76
|
-
|
77
|
-
if DX_COND_rtf
|
78
|
-
|
79
|
-
DX_CLEAN_RTF = @DX_DOCDIR@/rtf
|
80
|
-
|
81
|
-
endif DX_COND_rtf
|
82
|
-
|
83
|
-
## ------------------------------ ##
|
84
|
-
## Rules specific for XML output. ##
|
85
|
-
## ------------------------------ ##
|
86
|
-
|
87
|
-
if DX_COND_xml
|
88
|
-
|
89
|
-
DX_CLEAN_XML = @DX_DOCDIR@/xml
|
90
|
-
|
91
|
-
endif DX_COND_xml
|
92
|
-
|
93
|
-
## ----------------------------- ##
|
94
|
-
## Rules specific for PS output. ##
|
95
|
-
## ----------------------------- ##
|
96
|
-
|
97
|
-
if DX_COND_ps
|
98
|
-
|
99
|
-
DX_CLEAN_PS = @DX_DOCDIR@/@PACKAGE@.ps
|
100
|
-
|
101
|
-
DX_PS_GOAL = doxygen-ps
|
102
|
-
|
103
|
-
doxygen-ps: @DX_DOCDIR@/@PACKAGE@.ps
|
104
|
-
|
105
|
-
@DX_DOCDIR@/@PACKAGE@.ps: @DX_DOCDIR@/@PACKAGE@.tag $(DX_EXTRA_DEPEND)
|
106
|
-
cd @DX_DOCDIR@/latex; \
|
107
|
-
rm -f *.aux *.toc *.idx *.ind *.ilg *.log *.out; \
|
108
|
-
$(DX_LATEX) refman.tex; \
|
109
|
-
$(MAKEINDEX_PATH) refman.idx; \
|
110
|
-
$(DX_LATEX) refman.tex; \
|
111
|
-
countdown=5; \
|
112
|
-
while $(DX_EGREP) 'Rerun (LaTeX|to get cross-references right)' \
|
113
|
-
refman.log > /dev/null 2>&1 \
|
114
|
-
&& test $$countdown -gt 0; do \
|
115
|
-
$(DX_LATEX) refman.tex; \
|
116
|
-
countdown=`expr $$countdown - 1`; \
|
117
|
-
done; \
|
118
|
-
$(DX_DVIPS) -o ../@PACKAGE@.ps refman.dvi
|
119
|
-
|
120
|
-
endif DX_COND_ps
|
121
|
-
|
122
|
-
## ------------------------------ ##
|
123
|
-
## Rules specific for PDF output. ##
|
124
|
-
## ------------------------------ ##
|
125
|
-
|
126
|
-
if DX_COND_pdf
|
127
|
-
|
128
|
-
DX_CLEAN_PDF = @DX_DOCDIR@/@PACKAGE@.pdf
|
129
|
-
|
130
|
-
DX_PDF_GOAL = doxygen-pdf
|
131
|
-
|
132
|
-
doxygen-pdf: @DX_DOCDIR@/@PACKAGE@.pdf
|
133
|
-
|
134
|
-
@DX_DOCDIR@/@PACKAGE@.pdf: @DX_DOCDIR@/@PACKAGE@.tag $(DX_EXTRA_DEPEND)
|
135
|
-
cd @DX_DOCDIR@/latex; \
|
136
|
-
rm -f *.aux *.toc *.idx *.ind *.ilg *.log *.out; \
|
137
|
-
$(DX_PDFLATEX) refman.tex; \
|
138
|
-
$(DX_MAKEINDEX) refman.idx; \
|
139
|
-
$(DX_PDFLATEX) refman.tex; \
|
140
|
-
countdown=5; \
|
141
|
-
while $(DX_EGREP) 'Rerun (LaTeX|to get cross-references right)' \
|
142
|
-
refman.log > /dev/null 2>&1 \
|
143
|
-
&& test $$countdown -gt 0; do \
|
144
|
-
$(DX_PDFLATEX) refman.tex; \
|
145
|
-
countdown=`expr $$countdown - 1`; \
|
146
|
-
done; \
|
147
|
-
mv refman.pdf ../@PACKAGE@.pdf
|
148
|
-
|
149
|
-
endif DX_COND_pdf
|
150
|
-
|
151
|
-
## ------------------------------------------------- ##
|
152
|
-
## Rules specific for LaTeX (shared for PS and PDF). ##
|
153
|
-
## ------------------------------------------------- ##
|
154
|
-
|
155
|
-
if DX_COND_latex
|
156
|
-
|
157
|
-
DX_CLEAN_LATEX = @DX_DOCDIR@/latex
|
158
|
-
|
159
|
-
endif DX_COND_latex
|
160
|
-
|
161
|
-
.PHONY: doxygen-run doxygen-doc $(DX_PS_GOAL) $(DX_PDF_GOAL)
|
162
|
-
|
163
|
-
.INTERMEDIATE: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
|
164
|
-
|
165
|
-
doxygen-run: @DX_DOCDIR@/@PACKAGE@.tag
|
166
|
-
|
167
|
-
doxygen-doc: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
|
168
|
-
|
169
|
-
@DX_DOCDIR@/@PACKAGE@.tag: $(DX_CONFIG) $(pkginclude_HEADERS) $(DX_EXTRA_DEPEND)
|
170
|
-
rm -rf @DX_DOCDIR@
|
171
|
-
$(DX_ENV) $(DX_DOXYGEN) $(srcdir)/$(DX_CONFIG)
|
172
|
-
|
173
|
-
DX_CLEANFILES = \
|
174
|
-
@DX_DOCDIR@/@PACKAGE@.tag \
|
175
|
-
-r \
|
176
|
-
$(DX_CLEAN_HTML) \
|
177
|
-
$(DX_CLEAN_CHM) \
|
178
|
-
$(DX_CLEAN_CHI) \
|
179
|
-
$(DX_CLEAN_MAN) \
|
180
|
-
$(DX_CLEAN_RTF) \
|
181
|
-
$(DX_CLEAN_XML) \
|
182
|
-
$(DX_CLEAN_PS) \
|
183
|
-
$(DX_CLEAN_PDF) \
|
184
|
-
$(DX_CLEAN_LATEX)
|
185
|
-
|
186
|
-
endif DX_COND_doc
|