summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Haitzler <raster@rasterman.com>2012-11-13 23:52:18 +0000
committerCarsten Haitzler <raster@rasterman.com>2012-11-13 23:52:18 +0000
commitad851cacf624c876b8edf5e0a142e78e07e91697 (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904
parent19f7c0fd7be15cc0107959fad66d03d613eedc29 (diff)
move libs already in EFL into... IN-EFL - this will stop/prevent/limitmaster
thnigs like people using them and patching them, etc. SVN revision: 79255
-rw-r--r--.gitignore46
-rw-r--r--AUTHORS29
-rw-r--r--COPYING491
-rw-r--r--ChangeLog380
-rw-r--r--INSTALL236
-rw-r--r--Makefile.am113
-rw-r--r--NEWS131
-rw-r--r--README45
-rwxr-xr-xautogen.sh39
-rw-r--r--configure.ac677
-rw-r--r--doc/Doxyfile.in1678
-rw-r--r--doc/Makefile.am39
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.dtoa.data399
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.gnuplot17
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.gstrtod.data399
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.itoa_10.data399
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.itoa_16.data399
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.snprintf_10.data399
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.snprintf_16.data399
-rw-r--r--doc/benchmark/convert/bench_Convert_2008-08-29_0000.snprintf_a.data399
-rw-r--r--doc/benchmark/convert/output_Convert_2008-08-29_0000.pngbin8796 -> 0 bytes
-rw-r--r--doc/benchmark/stringshare/bench_Stringshare_2008-08-08_0000.gnuplot17
-rw-r--r--doc/benchmark/stringshare/bench_Stringshare_2008-08-08_0000.stringshare.data41
-rw-r--r--doc/benchmark/stringshare/bench_Stringshare_2008-08-08_0001.stringshare.data41
-rw-r--r--doc/benchmark/stringshare/output_Stringshare_2008-08-08_0000.linear.pngbin7354 -> 0 bytes
-rw-r--r--doc/benchmark/stringshare/output_Stringshare_2008-08-08_0000.logscale.pngbin6526 -> 0 bytes
-rw-r--r--doc/benchmark/stringshare/output_Stringshare_2008-08-08_0000.relative_error.pngbin6535 -> 0 bytes
-rw-r--r--doc/e.css273
-rw-r--r--doc/foot.html20
-rw-r--r--doc/head.html67
-rw-r--r--doc/img/01_hash-table.eps5858
-rw-r--r--doc/img/01_hash-table.pngbin31862 -> 0 bytes
-rw-r--r--doc/img/e.pngbin3825 -> 0 bytes
-rw-r--r--doc/img/edoxy.css483
-rw-r--r--doc/img/eina-list-foreach-safe.eps7162
-rw-r--r--doc/img/eina-list-foreach-safe.pngbin80074 -> 0 bytes
-rw-r--r--doc/img/eina-list-foreach.eps7030
-rw-r--r--doc/img/eina-list-foreach.pngbin76285 -> 0 bytes
-rw-r--r--doc/img/eina-list-free.eps6537
-rw-r--r--doc/img/eina-list-free.pngbin56669 -> 0 bytes
-rw-r--r--doc/img/eina-list-reverse-foreach-safe.eps7169
-rw-r--r--doc/img/eina-list-reverse-foreach-safe.pngbin80657 -> 0 bytes
-rw-r--r--doc/img/eina-list-reverse-foreach.eps7033
-rw-r--r--doc/img/eina-list-reverse-foreach.pngbin76624 -> 0 bytes
-rw-r--r--doc/img/eina_array-growth.eps5964
-rw-r--r--doc/img/eina_array-growth.pngbin28282 -> 0 bytes
-rw-r--r--doc/img/eina_inlist-node.eps5723
-rw-r--r--doc/img/eina_inlist-node.pngbin8895 -> 0 bytes
-rw-r--r--doc/img/eina_inlist-node_eg1-inlist.eps6193
-rw-r--r--doc/img/eina_inlist-node_eg1-inlist.pngbin13020 -> 0 bytes
-rw-r--r--doc/img/eina_inlist-node_eg1-my-struct.eps5721
-rw-r--r--doc/img/eina_inlist-node_eg1-my-struct.pngbin7682 -> 0 bytes
-rw-r--r--doc/img/eina_inlist-node_eg2-list-inlist.eps12923
-rw-r--r--doc/img/eina_inlist-node_eg2-list-inlist.pngbin25892 -> 0 bytes
-rw-r--r--doc/img/eina_inlist-node_eg2-my-struct.eps5721
-rw-r--r--doc/img/eina_inlist-node_eg2-my-struct.pngbin7755 -> 0 bytes
-rw-r--r--doc/img/eina_inlist-node_eg3-my-struct.eps5757
-rw-r--r--doc/img/eina_inlist-node_eg3-my-struct.pngbin10177 -> 0 bytes
-rw-r--r--doc/img/eina_inlist-node_eg3-two-inlists.eps7777
-rw-r--r--doc/img/eina_inlist-node_eg3-two-inlists.pngbin25975 -> 0 bytes
-rw-r--r--doc/img/eina_list.eps5889
-rw-r--r--doc/img/eina_list.pngbin35535 -> 0 bytes
-rw-r--r--doc/img/eina_list_example_01_a.eps5932
-rw-r--r--doc/img/eina_list_example_01_a.pngbin39126 -> 0 bytes
-rw-r--r--doc/img/eina_list_example_01_b.eps6228
-rw-r--r--doc/img/eina_list_example_01_b.pngbin36290 -> 0 bytes
-rw-r--r--doc/img/eina_stringshare.eps5959
-rw-r--r--doc/img/eina_stringshare.pngbin33685 -> 0 bytes
-rw-r--r--doc/img/foot_bg.pngbin173 -> 0 bytes
-rw-r--r--doc/img/head_bg.pngbin214 -> 0 bytes
-rw-r--r--doc/img/header_menu_background.pngbin192 -> 0 bytes
-rw-r--r--doc/img/header_menu_background_last.pngbin637 -> 0 bytes
-rw-r--r--doc/img/header_menu_unselected_background.pngbin1596 -> 0 bytes
-rw-r--r--doc/img/logo.pngbin3825 -> 0 bytes
-rw-r--r--doc/img/menu_bg.pngbin192 -> 0 bytes
-rw-r--r--doc/img/menu_bg_current.pngbin1200 -> 0 bytes
-rw-r--r--doc/img/menu_bg_hover.pngbin3278 -> 0 bytes
-rw-r--r--doc/img/menu_bg_last.pngbin637 -> 0 bytes
-rw-r--r--doc/img/menu_bg_unsel.pngbin1596 -> 0 bytes
-rw-r--r--eina.pc.in12
-rw-r--r--eina.spec.in60
-rw-r--r--m4/common/efl_attribute.m456
-rw-r--r--m4/common/efl_benchmark.m433
-rw-r--r--m4/common/efl_check_funcs.m4436
-rw-r--r--m4/common/efl_compiler_flag.m457
-rw-r--r--m4/common/efl_cpu.m4341
-rw-r--r--m4/common/efl_doxygen.m494
-rw-r--r--m4/common/efl_examples.m463
-rw-r--r--m4/common/efl_path_max.m436
-rw-r--r--m4/common/efl_tests.m465
-rw-r--r--m4/common/efl_threads.m4147
-rw-r--r--m4/common/efl_voltron.m493
-rw-r--r--m4/eina/eina_bench.m431
-rw-r--r--m4/eina/eina_check.m448
-rw-r--r--src/Makefile.am17
-rw-r--r--src/examples/Makefile.am122
-rw-r--r--src/examples/addr_book.txt7
-rw-r--r--src/examples/chat.xml24
-rw-r--r--src/examples/eina_accessor_01.c55
-rw-r--r--src/examples/eina_array_01.c49
-rw-r--r--src/examples/eina_array_02.c57
-rw-r--r--src/examples/eina_error_01.c81
-rw-r--r--src/examples/eina_file_01.c45
-rw-r--r--src/examples/eina_hash_01.c198
-rw-r--r--src/examples/eina_hash_02.c147
-rw-r--r--src/examples/eina_hash_03.c198
-rw-r--r--src/examples/eina_hash_04.c198
-rw-r--r--src/examples/eina_hash_05.c201
-rw-r--r--src/examples/eina_hash_06.c201
-rw-r--r--src/examples/eina_hash_07.c222
-rw-r--r--src/examples/eina_hash_08.c126
-rw-r--r--src/examples/eina_inarray_01.c52
-rw-r--r--src/examples/eina_inarray_02.c33
-rw-r--r--src/examples/eina_inlist_01.c98
-rw-r--r--src/examples/eina_inlist_02.c66
-rw-r--r--src/examples/eina_inlist_03.c75
-rw-r--r--src/examples/eina_iterator_01.c66
-rw-r--r--src/examples/eina_list_01.c44
-rw-r--r--src/examples/eina_list_02.c55
-rw-r--r--src/examples/eina_list_03.c45
-rw-r--r--src/examples/eina_list_04.c36
-rw-r--r--src/examples/eina_log_01.c27
-rw-r--r--src/examples/eina_log_02.c38
-rw-r--r--src/examples/eina_log_03.c78
-rw-r--r--src/examples/eina_magic_01.c106
-rw-r--r--src/examples/eina_model_01.c235
-rw-r--r--src/examples/eina_model_02.c61
-rw-r--r--src/examples/eina_model_03.c236
-rw-r--r--src/examples/eina_model_04_animal.c76
-rw-r--r--src/examples/eina_model_04_animal.h26
-rw-r--r--src/examples/eina_model_04_child.c81
-rw-r--r--src/examples/eina_model_04_child.h23
-rw-r--r--src/examples/eina_model_04_human.c157
-rw-r--r--src/examples/eina_model_04_human.h24
-rw-r--r--src/examples/eina_model_04_main.c110
-rw-r--r--src/examples/eina_model_04_parrot.c95
-rw-r--r--src/examples/eina_model_04_parrot.h24
-rw-r--r--src/examples/eina_model_04_whistler.c59
-rw-r--r--src/examples/eina_model_04_whistler.h45
-rw-r--r--src/examples/eina_simple_xml_parser_01.c127
-rw-r--r--src/examples/eina_str_01.c65
-rw-r--r--src/examples/eina_strbuf_01.c41
-rw-r--r--src/examples/eina_stringshare_01.c45
-rw-r--r--src/examples/eina_tiler_01.c316
-rw-r--r--src/examples/eina_value_01.c53
-rw-r--r--src/examples/eina_value_02.c100
-rw-r--r--src/examples/eina_value_03.c178
-rw-r--r--src/include/Eina.h249
-rw-r--r--src/include/Makefile.am96
-rw-r--r--src/include/eina_accessor.h348
-rw-r--r--src/include/eina_array.h450
-rw-r--r--src/include/eina_benchmark.h453
-rw-r--r--src/include/eina_binbuf.h235
-rw-r--r--src/include/eina_binshare.h193
-rw-r--r--src/include/eina_clist.h439
-rw-r--r--src/include/eina_config.h.in91
-rw-r--r--src/include/eina_convert.h374
-rw-r--r--src/include/eina_counter.h213
-rw-r--r--src/include/eina_cpu.h39
-rw-r--r--src/include/eina_error.h198
-rw-r--r--src/include/eina_file.h524
-rw-r--r--src/include/eina_fp.h111
-rw-r--r--src/include/eina_hamster.h58
-rw-r--r--src/include/eina_hash.h1056
-rw-r--r--src/include/eina_inarray.h715
-rw-r--r--src/include/eina_inline_array.x184
-rw-r--r--src/include/eina_inline_clist.x135
-rw-r--r--src/include/eina_inline_f16p16.x83
-rw-r--r--src/include/eina_inline_f32p32.x110
-rw-r--r--src/include/eina_inline_f8p24.x82
-rw-r--r--src/include/eina_inline_fp.x153
-rw-r--r--src/include/eina_inline_hash.x151
-rw-r--r--src/include/eina_inline_list.x67
-rw-r--r--src/include/eina_inline_lock_barrier.x48
-rw-r--r--src/include/eina_inline_lock_posix.x581
-rw-r--r--src/include/eina_inline_lock_void.x266
-rw-r--r--src/include/eina_inline_lock_win32.x556
-rw-r--r--src/include/eina_inline_lock_wince.x209
-rw-r--r--src/include/eina_inline_log.x202
-rw-r--r--src/include/eina_inline_mempool.x149
-rw-r--r--src/include/eina_inline_rbtree.x50
-rw-r--r--src/include/eina_inline_rectangle.x254
-rw-r--r--src/include/eina_inline_str.x76
-rw-r--r--src/include/eina_inline_stringshare.x91
-rw-r--r--src/include/eina_inline_tiler.x151
-rw-r--r--src/include/eina_inline_trash.x90
-rw-r--r--src/include/eina_inline_ustringshare.x93
-rw-r--r--src/include/eina_inline_value.x1788
-rw-r--r--src/include/eina_inlist.h840
-rw-r--r--src/include/eina_iterator.h344
-rw-r--r--src/include/eina_lalloc.h68
-rw-r--r--src/include/eina_list.h1643
-rw-r--r--src/include/eina_lock.h170
-rw-r--r--src/include/eina_log.h919
-rw-r--r--src/include/eina_magic.h330
-rw-r--r--src/include/eina_main.h165
-rw-r--r--src/include/eina_matrixsparse.h403
-rw-r--r--src/include/eina_mempool.h123
-rw-r--r--src/include/eina_mmap.h60
-rw-r--r--src/include/eina_model.h3155
-rw-r--r--src/include/eina_module.h347
-rw-r--r--src/include/eina_object.h79
-rw-r--r--src/include/eina_prefix.h231
-rw-r--r--src/include/eina_quadtree.h53
-rw-r--r--src/include/eina_rbtree.h271
-rw-r--r--src/include/eina_rectangle.h239
-rw-r--r--src/include/eina_refcount.h76
-rw-r--r--src/include/eina_safety_checks.h297
-rw-r--r--src/include/eina_sched.h39
-rw-r--r--src/include/eina_simple_xml_parser.h499
-rw-r--r--src/include/eina_str.h335
-rw-r--r--src/include/eina_strbuf.h623
-rw-r--r--src/include/eina_stringshare.h346
-rw-r--r--src/include/eina_thread.h82
-rw-r--r--src/include/eina_tiler.h309
-rw-r--r--src/include/eina_trash.h100
-rw-r--r--src/include/eina_types.h370
-rw-r--r--src/include/eina_unicode.h189
-rw-r--r--src/include/eina_ustrbuf.h464
-rw-r--r--src/include/eina_ustringshare.h201
-rw-r--r--src/include/eina_value.h3514
-rw-r--r--src/include/eina_xattr.h215
-rw-r--r--src/lib/Makefile.am180
-rw-r--r--src/lib/eina_accessor.c179
-rw-r--r--src/lib/eina_array.c491
-rw-r--r--src/lib/eina_benchmark.c372
-rw-r--r--src/lib/eina_binbuf.c62
-rw-r--r--src/lib/eina_binbuf_template_c.x153
-rw-r--r--src/lib/eina_binshare.c182
-rw-r--r--src/lib/eina_convert.c482
-rw-r--r--src/lib/eina_counter.c362
-rw-r--r--src/lib/eina_cpu.c224
-rw-r--r--src/lib/eina_error.c279
-rw-r--r--src/lib/eina_file.c1512
-rw-r--r--src/lib/eina_file_win32.c1387
-rw-r--r--src/lib/eina_fp.c486
-rw-r--r--src/lib/eina_hamster.c113
-rw-r--r--src/lib/eina_hash.c1379
-rw-r--r--src/lib/eina_inarray.c795
-rw-r--r--src/lib/eina_inlist.c914
-rw-r--r--src/lib/eina_iterator.c176
-rw-r--r--src/lib/eina_lalloc.c158
-rw-r--r--src/lib/eina_list.c1493
-rw-r--r--src/lib/eina_log.c2100
-rw-r--r--src/lib/eina_magic.c322
-rw-r--r--src/lib/eina_main.c463
-rw-r--r--src/lib/eina_matrixsparse.c1427
-rw-r--r--src/lib/eina_mempool.c391
-rw-r--r--src/lib/eina_mmap.c193
-rw-r--r--src/lib/eina_model.c5551
-rw-r--r--src/lib/eina_module.c603
-rw-r--r--src/lib/eina_object.c852
-rw-r--r--src/lib/eina_prefix.c746
-rw-r--r--src/lib/eina_private.h150
-rw-r--r--src/lib/eina_quadtree.c937
-rw-r--r--src/lib/eina_rbtree.c530
-rw-r--r--src/lib/eina_rectangle.c571
-rw-r--r--src/lib/eina_safety_checks.c90
-rw-r--r--src/lib/eina_sched.c101
-rw-r--r--src/lib/eina_share_common.c949
-rw-r--r--src/lib/eina_share_common.h86
-rw-r--r--src/lib/eina_simple_xml_parser.c1170
-rw-r--r--src/lib/eina_str.c572
-rw-r--r--src/lib/eina_strbuf.c202
-rw-r--r--src/lib/eina_strbuf_common.c874
-rw-r--r--src/lib/eina_strbuf_common.h120
-rw-r--r--src/lib/eina_strbuf_template_c.x97
-rw-r--r--src/lib/eina_stringshare.c797
-rw-r--r--src/lib/eina_thread.c313
-rw-r--r--src/lib/eina_tiler.c1290
-rw-r--r--src/lib/eina_unicode.c452
-rw-r--r--src/lib/eina_ustrbuf.c74
-rw-r--r--src/lib/eina_ustringshare.c189
-rw-r--r--src/lib/eina_value.c5309
-rw-r--r--src/lib/eina_xattr.c483
-rw-r--r--src/modules/Makefile.am4
-rw-r--r--src/modules/mp/Makefile.am45
-rw-r--r--src/modules/mp/buddy/Makefile.am28
-rw-r--r--src/modules/mp/buddy/eina_buddy.c292
-rw-r--r--src/modules/mp/chained_pool/Makefile.am29
-rw-r--r--src/modules/mp/chained_pool/eina_chained_mempool.c572
-rw-r--r--src/modules/mp/ememoa_fixed/Makefile.am29
-rw-r--r--src/modules/mp/ememoa_fixed/eina_ememoa_fixed.c176
-rw-r--r--src/modules/mp/ememoa_unknown/Makefile.am29
-rw-r--r--src/modules/mp/ememoa_unknown/eina_ememoa_unknown.c182
-rw-r--r--src/modules/mp/fixed_bitmap/Makefile.am28
-rw-r--r--src/modules/mp/fixed_bitmap/eina_fixed_bitmap.c270
-rw-r--r--src/modules/mp/one_big/Makefile.am29
-rw-r--r--src/modules/mp/one_big/eina_one_big.c336
-rw-r--r--src/modules/mp/pass_through/Makefile.am28
-rw-r--r--src/modules/mp/pass_through/eina_pass_through.c90
-rw-r--r--src/scripts/Makefile.am3
-rwxr-xr-xsrc/scripts/eina-bench-cmp250
-rw-r--r--src/tests/Ecore_Data.h557
-rw-r--r--src/tests/Evas_Data.h195
-rw-r--r--src/tests/Makefile.am142
-rw-r--r--src/tests/city.cc307
-rw-r--r--src/tests/city.h96
-rw-r--r--src/tests/cxx_compile_test.cxx34
-rw-r--r--src/tests/ecore_hash.c949
-rw-r--r--src/tests/ecore_list.c2162
-rw-r--r--src/tests/ecore_sheap.c467
-rw-r--r--src/tests/ecore_strings.c160
-rw-r--r--src/tests/eina_bench.c104
-rw-r--r--src/tests/eina_bench.h36
-rw-r--r--src/tests/eina_bench_array.c699
-rw-r--r--src/tests/eina_bench_convert.c183
-rw-r--r--src/tests/eina_bench_hash.c547
-rw-r--r--src/tests/eina_bench_mempool.c188
-rw-r--r--src/tests/eina_bench_quad.c320
-rw-r--r--src/tests/eina_bench_rectangle_pool.c76
-rw-r--r--src/tests/eina_bench_sort.c222
-rw-r--r--src/tests/eina_bench_stringshare.c185
-rw-r--r--src/tests/eina_bench_stringshare_e17.c118
-rw-r--r--src/tests/eina_suite.c183
-rw-r--r--src/tests/eina_suite.h61
-rw-r--r--src/tests/eina_test_accessor.c243
-rw-r--r--src/tests/eina_test_array.c191
-rw-r--r--src/tests/eina_test_benchmark.c76
-rw-r--r--src/tests/eina_test_binbuf.c263
-rw-r--r--src/tests/eina_test_binshare.c199
-rw-r--r--src/tests/eina_test_clist.c89
-rw-r--r--src/tests/eina_test_convert.c165
-rw-r--r--src/tests/eina_test_counter.c198
-rw-r--r--src/tests/eina_test_error.c243
-rw-r--r--src/tests/eina_test_file.c142
-rw-r--r--src/tests/eina_test_fp.c93
-rw-r--r--src/tests/eina_test_hash.c206
-rw-r--r--src/tests/eina_test_inarray.c401
-rw-r--r--src/tests/eina_test_inlist.c421
-rw-r--r--src/tests/eina_test_iterator.c465
-rw-r--r--src/tests/eina_test_lalloc.c89
-rw-r--r--src/tests/eina_test_list.c385
-rw-r--r--src/tests/eina_test_log.c424
-rw-r--r--src/tests/eina_test_magic.c206
-rw-r--r--src/tests/eina_test_main.c62
-rw-r--r--src/tests/eina_test_matrixsparse.c489
-rw-r--r--src/tests/eina_test_mempool.c187
-rw-r--r--src/tests/eina_test_model.c1288
-rw-r--r--src/tests/eina_test_module.c70
-rw-r--r--src/tests/eina_test_module_dummy.c22
-rw-r--r--src/tests/eina_test_quadtree.c195
-rw-r--r--src/tests/eina_test_rbtree.c452
-rw-r--r--src/tests/eina_test_rectangle.c115
-rw-r--r--src/tests/eina_test_sched.c85
-rw-r--r--src/tests/eina_test_simple_xml_parser.c75
-rw-r--r--src/tests/eina_test_str.c187
-rw-r--r--src/tests/eina_test_strbuf.c449
-rw-r--r--src/tests/eina_test_stringshare.c201
-rw-r--r--src/tests/eina_test_tiler.c184
-rw-r--r--src/tests/eina_test_ustr.c593
-rw-r--r--src/tests/eina_test_ustringshare.c119
-rw-r--r--src/tests/eina_test_value.c1877
-rw-r--r--src/tests/evas_hash.c536
-rw-r--r--src/tests/evas_list.c1093
-rw-r--r--src/tests/evas_mempool.c200
-rw-r--r--src/tests/evas_mempool.h21
-rw-r--r--src/tests/evas_object_list.c183
-rw-r--r--src/tests/evas_stringshare.c275
-rw-r--r--src/tests/sample.gpx26
-rw-r--r--src/tests/strlog46999
361 files changed, 0 insertions, 273534 deletions
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 1dbaca3..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,46 +0,0 @@
1*~
2*.o
3*.lo
4*.la
5.libs
6.deps
7*.pc
8Makefile
9Makefile.in
10*.so
11.*.sw[po]
12*.gcov
13*.gcno
14/README
15/aclocal.m4
16/autom4te.cache/
17/config.cache
18/config.guess
19/config.h
20/config.h.in
21/config.log
22/config.status
23/config.sub
24/configure
25/depcomp
26/doc/evas.dox
27/evas.spec
28/install-sh
29/libtool
30/ltmain.sh
31/missing
32/stamp-h1
33tags
34cscope.out
35/config.cache
36coverage
37/ABOUT-NLS
38/config.cache-env
39/doc/Doxyfile
40/eina.spec
41/m4/libtool.m4
42/m4/ltoptions.m4
43/m4/ltsugar.m4
44/m4/ltversion.m4
45/m4/lt~obsolete.m4
46/src/include/eina_config.h
diff --git a/AUTHORS b/AUTHORS
deleted file mode 100644
index 2fe4065..0000000
--- a/AUTHORS
+++ /dev/null
@@ -1,29 +0,0 @@
1Jorge Luis "turran" Zapata <jorgeluis.zapata@gmail.com>
2Carsten Haitzler <raster@rasterman.com>
3Corey "atmos" Donohoe <atmos@atmos.org>
4Vincent "caro" Torri <vtorri at univ-evry dot fr>
5Gustavo Sverzut Barbieri <barbieri@gmail.com>
6Tilman Sauerbeck <tilman@code-monkey.de>
7Cedric Bail <cedric.bail@free.fr>
8Peter "pfritz" Wehrfritz <peter.wehrfritz@web.de>
9Arnaud de Turckheim "quarium" <quarium@gmail.com>
10Alexandre "diaxen" Becoulet <diaxen@free.fr>
11Albin "Lutin" Tonnerre <albin.tonnerre@gmail.com>
12Andre Dieb <andre.dieb@gmail.com>
13Raphael Kubo da Costa <kubo@profusion.mobi>
14Gustavo Chaves <glima@profusion.mobi>
15Fabiano Fidêncio <fidencio@profusion.mobi>
16Brett Nash <nash@nash.id.au>
17Tom Hacohen <tom@stosb.com>
18Sebastian Dransfeld <sd@tango.flipp.net>
19Myungjae Lee <mjae.lee@samsung.com>
20Youness Alaoui <kakaroto@kakaroto.homelinux.net>
21billiob (Boris Faure) <billiob@gmail.com>
22Sung W. Park <sungwoo@gmail.com>
23Guillaume Friloux <guillaume.friloux@asp64.com>
24Jonas M. Gastal <jgastal@profusion.mobi>
25Raphael Kubo da Costa <rakuco@freebsd.org>
26Jérôme Pinot <ngc891@gmail.com>
27Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
28Patryk Kaczmarek <patryk.k@samsung.com>
29Igor Murzov <e-mail@date.by> \ No newline at end of file
diff --git a/COPYING b/COPYING
deleted file mode 100644
index abe887c..0000000
--- a/COPYING
+++ /dev/null
@@ -1,491 +0,0 @@
1Copyright notice for Eina:
2
3Copyright (C) 2008-2011 Jorge Luis Zapata and various contributors (see AUTHORS)
4
5This library is free software; you can redistribute it and/or modify it
6under the terms of the GNU Lesser General Public License as published by the
7Free Software Foundation; either version 2.1 of the License.
8
9This library is distributed in the hope that it will be useful, but WITHOUT
10ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12details.
13
14Below is a copy of the GNU Lesser General Public License that is distributed
15along with this library. If you do not have a copy below, write to the Free
16Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
1702110-1301 USA
18
19 GNU LESSER GENERAL PUBLIC LICENSE
20 Version 2.1, February 1999
21
22 Copyright (C) 1991, 1999 Free Software Foundation, Inc.
23 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24 Everyone is permitted to copy and distribute verbatim copies
25 of this license document, but changing it is not allowed.
26
27[This is the first released version of the Lesser GPL. It also counts
28 as the successor of the GNU Library Public License, version 2, hence
29 the version number 2.1.]
30
31 Preamble
32
33 The licenses for most software are designed to take away your
34freedom to share and change it. By contrast, the GNU General Public
35Licenses are intended to guarantee your freedom to share and change
36free software--to make sure the software is free for all its users.
37
38 This license, the Lesser General Public License, applies to some
39specially designated software packages--typically libraries--of the
40Free Software Foundation and other authors who decide to use it. You
41can use it too, but we suggest you first think carefully about whether
42this license or the ordinary General Public License is the better
43strategy to use in any particular case, based on the explanations below.
44
45 When we speak of free software, we are referring to freedom of use,
46not price. Our General Public Licenses are designed to make sure that
47you have the freedom to distribute copies of free software (and charge
48for this service if you wish); that you receive source code or can get
49it if you want it; that you can change the software and use pieces of
50it in new free programs; and that you are informed that you can do
51these things.
52
53 To protect your rights, we need to make restrictions that forbid
54distributors to deny you these rights or to ask you to surrender these
55rights. These restrictions translate to certain responsibilities for
56you if you distribute copies of the library or if you modify it.
57
58 For example, if you distribute copies of the library, whether gratis
59or for a fee, you must give the recipients all the rights that we gave
60you. You must make sure that they, too, receive or can get the source
61code. If you link other code with the library, you must provide
62complete object files to the recipients, so that they can relink them
63with the library after making changes to the library and recompiling
64it. And you must show them these terms so they know their rights.
65
66 We protect your rights with a two-step method: (1) we copyright the
67library, and (2) we offer you this license, which gives you legal
68permission to copy, distribute and/or modify the library.
69
70 To protect each distributor, we want to make it very clear that
71there is no warranty for the free library. Also, if the library is
72modified by someone else and passed on, the recipients should know
73that what they have is not the original version, so that the original
74author's reputation will not be affected by problems that might be
75introduced by others.
76
77 Finally, software patents pose a constant threat to the existence of
78any free program. We wish to make sure that a company cannot
79effectively restrict the users of a free program by obtaining a
80restrictive license from a patent holder. Therefore, we insist that
81any patent license obtained for a version of the library must be
82consistent with the full freedom of use specified in this license.
83
84 Most GNU software, including some libraries, is covered by the
85ordinary GNU General Public License. This license, the GNU Lesser
86General Public License, applies to certain designated libraries, and
87is quite different from the ordinary General Public License. We use
88this license for certain libraries in order to permit linking those
89libraries into non-free programs.
90
91 When a program is linked with a library, whether statically or using
92a shared library, the combination of the two is legally speaking a
93combined work, a derivative of the original library. The ordinary
94General Public License therefore permits such linking only if the
95entire combination fits its criteria of freedom. The Lesser General
96Public License permits more lax criteria for linking other code with
97the library.
98
99 We call this license the "Lesser" General Public License because it
100does Less to protect the user's freedom than the ordinary General
101Public License. It also provides other free software developers Less
102of an advantage over competing non-free programs. These disadvantages
103are the reason we use the ordinary General Public License for many
104libraries. However, the Lesser license provides advantages in certain
105special circumstances.
106
107 For example, on rare occasions, there may be a special need to
108encourage the widest possible use of a certain library, so that it becomes
109a de-facto standard. To achieve this, non-free programs must be
110allowed to use the library. A more frequent case is that a free
111library does the same job as widely used non-free libraries. In this
112case, there is little to gain by limiting the free library to free
113software only, so we use the Lesser General Public License.
114
115 In other cases, permission to use a particular library in non-free
116programs enables a greater number of people to use a large body of
117free software. For example, permission to use the GNU C Library in
118non-free programs enables many more people to use the whole GNU
119operating system, as well as its variant, the GNU/Linux operating
120system.
121
122 Although the Lesser General Public License is Less protective of the
123users' freedom, it does ensure that the user of a program that is
124linked with the Library has the freedom and the wherewithal to run
125that program using a modified version of the Library.
126
127 The precise terms and conditions for copying, distribution and
128modification follow. Pay close attention to the difference between a
129"work based on the library" and a "work that uses the library". The
130former contains code derived from the library, whereas the latter must
131be combined with the library in order to run.
132
133 GNU LESSER GENERAL PUBLIC LICENSE
134 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
135
136 0. This License Agreement applies to any software library or other
137program which contains a notice placed by the copyright holder or
138other authorized party saying it may be distributed under the terms of
139this Lesser General Public License (also called "this License").
140Each licensee is addressed as "you".
141
142 A "library" means a collection of software functions and/or data
143prepared so as to be conveniently linked with application programs
144(which use some of those functions and data) to form executables.
145
146 The "Library", below, refers to any such software library or work
147which has been distributed under these terms. A "work based on the
148Library" means either the Library or any derivative work under
149copyright law: that is to say, a work containing the Library or a
150portion of it, either verbatim or with modifications and/or translated
151straightforwardly into another language. (Hereinafter, translation is
152included without limitation in the term "modification".)
153
154 "Source code" for a work means the preferred form of the work for
155making modifications to it. For a library, complete source code means
156all the source code for all modules it contains, plus any associated
157interface definition files, plus the scripts used to control compilation
158and installation of the library.
159
160 Activities other than copying, distribution and modification are not
161covered by this License; they are outside its scope. The act of
162running a program using the Library is not restricted, and output from
163such a program is covered only if its contents constitute a work based
164on the Library (independent of the use of the Library in a tool for
165writing it). Whether that is true depends on what the Library does
166and what the program that uses the Library does.
167
168 1. You may copy and distribute verbatim copies of the Library's
169complete source code as you receive it, in any medium, provided that
170you conspicuously and appropriately publish on each copy an
171appropriate copyright notice and disclaimer of warranty; keep intact
172all the notices that refer to this License and to the absence of any
173warranty; and distribute a copy of this License along with the
174Library.
175
176 You may charge a fee for the physical act of transferring a copy,
177and you may at your option offer warranty protection in exchange for a
178fee.
179
180 2. You may modify your copy or copies of the Library or any portion
181of it, thus forming a work based on the Library, and copy and
182distribute such modifications or work under the terms of Section 1
183above, provided that you also meet all of these conditions:
184
185 a) The modified work must itself be a software library.
186
187 b) You must cause the files modified to carry prominent notices
188 stating that you changed the files and the date of any change.
189
190 c) You must cause the whole of the work to be licensed at no
191 charge to all third parties under the terms of this License.
192
193 d) If a facility in the modified Library refers to a function or a
194 table of data to be supplied by an application program that uses
195 the facility, other than as an argument passed when the facility
196 is invoked, then you must make a good faith effort to ensure that,
197 in the event an application does not supply such function or
198 table, the facility still operates, and performs whatever part of
199 its purpose remains meaningful.
200
201 (For example, a function in a library to compute square roots has
202 a purpose that is entirely well-defined independent of the
203 application. Therefore, Subsection 2d requires that any
204 application-supplied function or table used by this function must
205 be optional: if the application does not supply it, the square
206 root function must still compute square roots.)
207
208These requirements apply to the modified work as a whole. If
209identifiable sections of that work are not derived from the Library,
210and can be reasonably considered independent and separate works in
211themselves, then this License, and its terms, do not apply to those
212sections when you distribute them as separate works. But when you
213distribute the same sections as part of a whole which is a work based
214on the Library, the distribution of the whole must be on the terms of
215this License, whose permissions for other licensees extend to the
216entire whole, and thus to each and every part regardless of who wrote
217it.
218
219Thus, it is not the intent of this section to claim rights or contest
220your rights to work written entirely by you; rather, the intent is to
221exercise the right to control the distribution of derivative or
222collective works based on the Library.
223
224In addition, mere aggregation of another work not based on the Library
225with the Library (or with a work based on the Library) on a volume of
226a storage or distribution medium does not bring the other work under
227the scope of this License.
228
229Linking this library statically or dynamically with other modules is
230making a combined work based on this library. Thus, the terms and
231conditions of the GNU General Public License cover the whole combination.
232
233As a special exception, the copyright holders of this library give you
234permission to link this library with independent modules to produce an
235executable, regardless of the license terms of these independent modules,
236and to copy and distribute the resulting executable under terms of your
237choice, provided that you also meet, for each linked independent module,
238the terms and conditions of the license of that module. An independent
239module is a module which is not derived from or based on this library.
240If you modify this library, you may extend this exception to your version
241of the library, but you are not obliged to do so. If you do not wish to
242do so, delete this exception statement from your version.
243
244 3. You may opt to apply the terms of the ordinary GNU General Public
245License instead of this License to a given copy of the Library. To do
246this, you must alter all the notices that refer to this License, so
247that they refer to the ordinary GNU General Public License, version 2,
248instead of to this License. (If a newer version than version 2 of the
249ordinary GNU General Public License has appeared, then you can specify
250that version instead if you wish.) Do not make any other change in
251these notices.
252
253 Once this change is made in a given copy, it is irreversible for
254that copy, so the ordinary GNU General Public License applies to all
255subsequent copies and derivative works made from that copy.
256
257 This option is useful when you wish to copy part of the code of
258the Library into a program that is not a library.
259
260 4. You may copy and distribute the Library (or a portion or
261derivative of it, under Section 2) in object code or executable form
262under the terms of Sections 1 and 2 above provided that you accompany
263it with the complete corresponding machine-readable source code, which
264must be distributed under the terms of Sections 1 and 2 above on a
265medium customarily used for software interchange.
266
267 If distribution of object code is made by offering access to copy
268from a designated place, then offering equivalent access to copy the
269source code from the same place satisfies the requirement to
270distribute the source code, even though third parties are not
271compelled to copy the source along with the object code.
272
273 5. A program that contains no derivative of any portion of the
274Library, but is designed to work with the Library by being compiled or
275linked with it, is called a "work that uses the Library". Such a
276work, in isolation, is not a derivative work of the Library, and
277therefore falls outside the scope of this License.
278
279 However, linking a "work that uses the Library" with the Library
280creates an executable that is a derivative of the Library (because it
281contains portions of the Library), rather than a "work that uses the
282library". The executable is therefore covered by this License.
283Section 6 states terms for distribution of such executables.
284
285 When a "work that uses the Library" uses material from a header file
286that is part of the Library, the object code for the work may be a
287derivative work of the Library even though the source code is not.
288Whether this is true is especially significant if the work can be
289linked without the Library, or if the work is itself a library. The
290threshold for this to be true is not precisely defined by law.
291
292 If such an object file uses only numerical parameters, data
293structure layouts and accessors, and small macros and small inline
294functions (ten lines or less in length), then the use of the object
295file is unrestricted, regardless of whether it is legally a derivative
296work. (Executables containing this object code plus portions of the
297Library will still fall under Section 6.)
298
299 Otherwise, if the work is a derivative of the Library, you may
300distribute the object code for the work under the terms of Section 6.
301Any executables containing that work also fall under Section 6,
302whether or not they are linked directly with the Library itself.
303
304 6. As an exception to the Sections above, you may also combine or
305link a "work that uses the Library" with the Library to produce a
306work containing portions of the Library, and distribute that work
307under terms of your choice, provided that the terms permit
308modification of the work for the customer's own use and reverse
309engineering for debugging such modifications.
310
311 You must give prominent notice with each copy of the work that the
312Library is used in it and that the Library and its use are covered by
313this License. You must supply a copy of this License. If the work
314during execution displays copyright notices, you must include the
315copyright notice for the Library among them, as well as a reference
316directing the user to the copy of this License. Also, you must do one
317of these things:
318
319 a) Accompany the work with the complete corresponding
320 machine-readable source code for the Library including whatever
321 changes were used in the work (which must be distributed under
322 Sections 1 and 2 above); and, if the work is an executable linked
323 with the Library, with the complete machine-readable "work that
324 uses the Library", as object code and/or source code, so that the
325 user can modify the Library and then relink to produce a modified
326 executable containing the modified Library. (It is understood
327 that the user who changes the contents of definitions files in the
328 Library will not necessarily be able to recompile the application
329 to use the modified definitions.)
330
331 b) Use a suitable shared library mechanism for linking with the
332 Library. A suitable mechanism is one that (1) uses at run time a
333 copy of the library already present on the user's computer system,
334 rather than copying library functions into the executable, and (2)
335 will operate properly with a modified version of the library, if
336 the user installs one, as long as the modified version is
337 interface-compatible with the version that the work was made with.
338
339 c) Accompany the work with a written offer, valid for at
340 least three years, to give the same user the materials
341 specified in Subsection 6a, above, for a charge no more
342 than the cost of performing this distribution.
343
344 d) If distribution of the work is made by offering access to copy
345 from a designated place, offer equivalent access to copy the above
346 specified materials from the same place.
347
348 e) Verify that the user has already received a copy of these
349 materials or that you have already sent this user a copy.
350
351 For an executable, the required form of the "work that uses the
352Library" must include any data and utility programs needed for
353reproducing the executable from it. However, as a special exception,
354the materials to be distributed need not include anything that is
355normally distributed (in either source or binary form) with the major
356components (compiler, kernel, and so on) of the operating system on
357which the executable runs, unless that component itself accompanies
358the executable.
359
360 It may happen that this requirement contradicts the license
361restrictions of other proprietary libraries that do not normally
362accompany the operating system. Such a contradiction means you cannot
363use both them and the Library together in an executable that you
364distribute.
365
366 7. You may place library facilities that are a work based on the
367Library side-by-side in a single library together with other library
368facilities not covered by this License, and distribute such a combined
369library, provided that the separate distribution of the work based on
370the Library and of the other library facilities is otherwise
371permitted, and provided that you do these two things:
372
373 a) Accompany the combined library with a copy of the same work
374 based on the Library, uncombined with any other library
375 facilities. This must be distributed under the terms of the
376 Sections above.
377
378 b) Give prominent notice with the combined library of the fact
379 that part of it is a work based on the Library, and explaining
380 where to find the accompanying uncombined form of the same work.
381
382 8. You may not copy, modify, sublicense, link with, or distribute
383the Library except as expressly provided under this License. Any
384attempt otherwise to copy, modify, sublicense, link with, or
385distribute the Library is void, and will automatically terminate your
386rights under this License. However, parties who have received copies,
387or rights, from you under this License will not have their licenses
388terminated so long as such parties remain in full compliance.
389
390 9. You are not required to accept this License, since you have not
391signed it. However, nothing else grants you permission to modify or
392distribute the Library or its derivative works. These actions are
393prohibited by law if you do not accept this License. Therefore, by
394modifying or distributing the Library (or any work based on the
395Library), you indicate your acceptance of this License to do so, and
396all its terms and conditions for copying, distributing or modifying
397the Library or works based on it.
398
399 10. Each time you redistribute the Library (or any work based on the
400Library), the recipient automatically receives a license from the
401original licensor to copy, distribute, link with or modify the Library
402subject to these terms and conditions. You may not impose any further
403restrictions on the recipients' exercise of the rights granted herein.
404You are not responsible for enforcing compliance by third parties with
405this License.
406
407 11. If, as a consequence of a court judgment or allegation of patent
408infringement or for any other reason (not limited to patent issues),
409conditions are imposed on you (whether by court order, agreement or
410otherwise) that contradict the conditions of this License, they do not
411excuse you from the conditions of this License. If you cannot
412distribute so as to satisfy simultaneously your obligations under this
413License and any other pertinent obligations, then as a consequence you
414may not distribute the Library at all. For example, if a patent
415license would not permit royalty-free redistribution of the Library by
416all those who receive copies directly or indirectly through you, then
417the only way you could satisfy both it and this License would be to
418refrain entirely from distribution of the Library.
419
420If any portion of this section is held invalid or unenforceable under any
421particular circumstance, the balance of the section is intended to apply,
422and the section as a whole is intended to apply in other circumstances.
423
424It is not the purpose of this section to induce you to infringe any
425patents or other property right claims or to contest validity of any
426such claims; this section has the sole purpose of protecting the
427integrity of the free software distribution system which is
428implemented by public license practices. Many people have made
429generous contributions to the wide range of software distributed
430through that system in reliance on consistent application of that
431system; it is up to the author/donor to decide if he or she is willing
432to distribute software through any other system and a licensee cannot
433impose that choice.
434
435This section is intended to make thoroughly clear what is believed to
436be a consequence of the rest of this License.
437
438 12. If the distribution and/or use of the Library is restricted in
439certain countries either by patents or by copyrighted interfaces, the
440original copyright holder who places the Library under this License may add
441an explicit geographical distribution limitation excluding those countries,
442so that distribution is permitted only in or among countries not thus
443excluded. In such case, this License incorporates the limitation as if
444written in the body of this License.
445
446 13. The Free Software Foundation may publish revised and/or new
447versions of the Lesser General Public License from time to time.
448Such new versions will be similar in spirit to the present version,
449but may differ in detail to address new problems or concerns.
450
451Each version is given a distinguishing version number. If the Library
452specifies a version number of this License which applies to it and
453"any later version", you have the option of following the terms and
454conditions either of that version or of any later version published by
455the Free Software Foundation. If the Library does not specify a
456license version number, you may choose any version ever published by
457the Free Software Foundation.
458
459 14. If you wish to incorporate parts of the Library into other free
460programs whose distribution conditions are incompatible with these,
461write to the author to ask for permission. For software which is
462copyrighted by the Free Software Foundation, write to the Free
463Software Foundation; we sometimes make exceptions for this. Our
464decision will be guided by the two goals of preserving the free status
465of all derivatives of our free software and of promoting the sharing
466and reuse of software generally.
467
468 NO WARRANTY
469
470 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
471WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
472EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
473OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
474KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
475IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
476PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
477LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
478THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
479
480 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
481WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
482AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
483FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
484CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
485LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
486RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
487FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
488SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
489DAMAGES.
490
491 END OF TERMS AND CONDITIONS
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index 5a0d4e0..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,380 +0,0 @@
12011-01-29 Carsten Haitzler (The Rasterman)
2
3 1.0.0 release
4
52011-02-01 Cedric Bail
6
7 * Improve scalability and raw speed of Chained Mempool.
8
92011-02-08 Tom Hacohen
10
11 * Added eina_unicode_strndup
12
132011-02-16 Mike Blumenkrantz
14
15 * Added EINA_INLIST_FOREACH_SAFE
16
172011-02-16 Tom Hacohen
18
19 * Added eina_unicode_utf8* functions for utf8 string handling
20 and conversions to and from Eina_Unicode
21
222011-02-17 Mike Blumenkrantz
23
24 * Added eina_list_move* functions for moving list node data to other lists
25
262011-02-24 Vincent Torri
27
28 * Fix a compilation failure when --disable-posix-threads
29 --disable-valgrind are passed to configure
30
312011-03-09 Cedric Bail
32
33 * Fix stat failure when file size in bytes or the number of blocks
34 allocated to the file or the file serial number didn't fit in 32bits.
35
362011-03-18 Mike Blumenkrantz
37
38 * Use stringshare for eina_error messages
39 * add eina_error_find to match an error message with its Eina_Error
40
412011-04-06 Gustavo Sverzut Barbieri
42
43 * Add Simple XML parser API.
44
452011-04-11 Cedric Bail
46
47 * Add eina_inlist_sort.
48 * Add eina_mempool_repack.
49
502011-04-13 Cedric Bail & Vincent Torri
51
52 * Add Eina_File API, a portable mmap helper with some cache and tracking feature.
53
542011-04-22 Vincent Torri
55
56 * Add Eina_Lock API, a portable solution across various system for locking/unlocking mutex.
57
582011-04-24 Carsten Haitzler (The Rasterman)
59
60 * Add a prefix location finder api to eina. Beta status. needs
61 more use from higher up libs/apps first.
62
632011-04-24 Vincent Torri
64
65 * Fix uninstallation of the mempools modules
66
672011-04-27 Vincent Torri
68
69 * Fix static build of the buddy mempool
70
712011-04-29 Cedric Bail
72
73 * Add Eina_Refcount macro helper. You should really use them when running with thread !
74
752011-05-14 Vincent Torri
76
77 * Add Eina_Condition API on Windows.
78
792011-05-17 Tom Hacohen (TAsn)
80
81 * Added eina_binbuf: This is just like strbuf but for binary blobs.
82 Requested by discomfitor and honestly it looks needed.
83
842011-05-18 Cedric Bail
85
86 * Fix eina_share_common_init to be called only once.
87
882011-05-24 Vincent Torri
89
90 * Implement eina_sched_prio_drop() on Windows
91
922011-05-24 Cedric Bail
93
94 * Add eina_inlist_sorted_insert.
95
962011-05-30 Cedric Bail
97
98 * Add eina_condition_timedwait.
99
1002011-05-31 Cedric Bail
101
102 * Fix eina_hash_set to handle data == NULL like eina_hash_del.
103
1042011-06-03 Vincent Torri
105
106 * Fix static linking with eina (iconv could potentially not be
107 passed to the linker)
108
1092011-06-15 Cedric Bail
110
111 * Add eina_hash_free_cb_set to change the free callback during the
112 life of an Eina_Hash.
113
1142011-06-23 Cedric Bail
115
116 * Add Eina_LockRW.
117
1182011-07-04 Carsten Haitzler (The Rasterman)
119
120 * Add eina_mmap safety handling.
121
1222011-07-29 Cedric Bail
123
124 * Add eina_main_loop_is.
125
1262011-08-03 Myungjae Lee
127
128 * Fix eina_share_common_del and eina_share_common_ref to release lock on failure.
129
1302011-09-05 Cedric Bail
131
132 * Add eina_inlist_sorted_state_insert and helper.
133
1342011-09-06 Tom Hacohen
135
136 * Strbuf + Ustrbuf: Added eina_(u)strbuf_manage_new. This lets us
137 take a string and use it as the string buffer instead of copying
138 and allocating.
139
1402011-09-15 Cedric Bail
141
142 * Add eina_xattr_ls, eina_xattr_get, eina_xattr_set, eina_xattr_string_set,
143 eina_xattr_string_get, eina_xattr_double_set, eina_xattr_double_get,
144 eina_xattr_int_set, eina_xattr_int_get.
145
1462011-11-10 Boris Faure (billiob)
147
148 * Add new hash function eina_hash_murmur3 that should be better at
149 hashing strings.
150
1512011-12-02 Carsten Haitzler (The Rasterman)
152
153 1.1.0 release
154
1552011-12-02 Mike Blumenkrantz (discomfitor/zmike)
156
157 * Add eina_mempool_calloc for returning zeroed memory
158
1592011-12-07 Mike Blumenkrantz (discomfitor/zmike)
160
161 * eina_log*level_check() functions now return the correct value
162
1632011-12-08 Tom Hacohen
164
165 * Binbuf + Strbuf + Ustrbuf: Added eina_*buf_manage_new_length.
166 Same as eina_(u)strbuf_manage_new except that it accepts a length
167 parameter.
168
1692011-12-20 Cedric Bail
170
171 * Fix bug on eina_shutdown when using eina_error.
172
1732011-12-28 Cedric Bail
174
175 * Fix NONNULL argument for eina_hash_find.
176
1772011-12-30 Vincent Torri
178
179 * Add Eina_Semaphore abstraction API.
180
1812011-12-30 Cedric Bail
182
183 * Let eina_hash_free behave like free.
184
1852012-01-03 Cedric Bail
186
187 * Add eina_xattr_fd_ls, eina_xattr_value_fd_ls and eina_xattr_value_ls.
188 * Detect fault during access to Eina_File mmap memory, use
189 eina_file_map_faulted to learn if it happens.
190 * Add eina_file_xattr_get and eina_file_xattr_value_get.
191
1922012-01-09 Gustavo Barbieri
193
194 * Deprecated eina_array_count_get(), use eina_array_count() instead.
195 * Add eina_inarray data type.
196 * Add eina_value data type (generic value storage).
197
1982012-01-19 Shinwoo Kim
199
200 * Fix compilation of eina_semaphore_lock() (Windows port)
201
2022012-01-20 Gustavo Barbieri
203
204 * Add eina_model data type (generic hierarchy data access).
205
2062011-12-30 Vincent Torri
207
208 * Fix Eina_RWLock code on Windows > XP.
209
2102012-01-29 Tom Hacohen
211
212 * Added EINA_C_ARRAY_LENGTH, a macro that returns the length of a
213 standard C array.
214
2152012-01-31 Tom Hacohen
216
217 * Added an Eina_Stringshare type. It's just a typedef of "const char"
218 this is a same kind of visual hint for the purpose of the pointer,
219 but again, the two types are interchangeable.
220
2212012-02-17 Cedric Bail
222
223 * Fix forgotten initialization of eina list count during eina_list_split_list.
224
2252012-02-22 Cedric Bail
226
227 * Add eina_file_stat.
228
2292012-02-27 Alexandre Becoulet
230
231 * Add faster implementation of Eina_Rbtree.
232
2332012-03-07 Cedric Bail
234
235 * Fix leak of Eina_File.
236
2372012-03-14 Cedric Bail
238
239 * Fix a dead lock in Eina_File.
240
2412012-03-16 Raphael Kubo da Costa
242
243 * Adjust Valgrind's CFLAGS to fix the build when it is in a non-default location.
244
2452012-03-29 Iván Briano
246
247 * Avoid freeing old data before returning it on eina_hash_set().
248
2492012-03-31 Vincent Torri
250
251 * Add missing API eina_file_map_faulted() on Windows. Does nothing
252 for now.
253
2542012-04-19 Cedric Bail
255
256 * Make it possible to force the number of detected CPU on a system.
257
2582012-04-26 Carsten Haitzler (The Rasterman)
259
260 1.2.0 release
261
2622012-04-26 Cedric Bail
263
264 * Add backtrace support Eina_Log.
265
2662012-04-30 Jérôme Pinot
267
268 * Add missing files in the tarballs.
269
2702012-05-06 Cedric Bail
271
272 * Fix a rounding issue near 1.0 for eina_f32p32_cos and eina_f32p32_sin.
273
2742012-05-08 Cedric Bail
275
276 * Add eina_file_map_lines to iterate on lines of a mapped file.
277
2782012-05-17 Albin Tonnerre
279
280 * Fix portability issue of Eina_Value on ARM and PPC.
281 * Fix portability issue of Eina_Value test on Itanium.
282
2832012-05-23 Carsten Haitzler (The Rasterman)
284
285 * Fix global_faulty faulty flag in eina_file to be set to 0
286 initially rather than be random memory garbage.
287
2882012-05-29 Vincent Torri
289
290 * remove --disable-posix-threads and --disable-win32-threads
291 from configure options, and detect automatically the threading
292 support.
293 Fix bug in the XML parser when a tag was in a comment or a
294 cdata
295
2962012-06-08 Mike Blumenkrantz
297
298 * Fixed eina_str_split_full() to behave properly and be much faster
299
3002012-06-17 Carsten Haitzler (The Rasterman)
301
302 * Add env var EINA_MEMPOOL_PASS to force mempool to try use
303 passthrough to malloc for debgging purposes and memory footrpint
304 comparisons at runtime.
305
3062012-07-01 Vincent Torri
307
308 * Remove --enable-coverage from configure options.
309
3102012-07-04 Vincent Torri
311
312 * Implement eina_file_map_lines() on Windows.
313
3142012-07-05 Raphael Kubo da Costa
315
316 * Handle NULL in all eina_*_free function.
317
3182012-08-01 Carsten Haitzler (The Rasterman)
319
320 * Modify eina_prefix to deal with debian's fun new
321 multiarch... if you are a shared library.
322
3232012-08-01 Gustavo Sverzut Barbieri (k-s)
324
325 * added eina_log_console_color_set() for cross platform console
326 color set.
327
3282012-08-14 Lucas De Marchi
329
330 * Add EINA_SENTINEL macro to protect variadic functions
331
3322012-08-30 Carsten Haitzler (The Rasterman)
333
334 1.7.0 release
335
3362012-09-04 Roberto de Souza <zehortigoza@profusion.mobi>
337
338 * Fix EINA_INLIST_FOREACH_SAFE macro to work when inlist is not the
339 first item in the struct.
340
3412012-09-11 Cedric Bail
342
343 * Speedup Eina Rbtree Iterator by recycling memory instead of massively calling malloc/free.
344
3452012-09-12 Patryk Kaczmarek <patryk.k@samsung.com>
346
347 * Add EINA_SAFETY checks for proper function arguments.
348 * Add check if given arguments (distance and coordinates) in eina_tiler
349 and eina_rectangle are not below zero
350 * Documentation for eina list specified and eina stringshare fixed
351
3522012-09-15 Vincent Torri
353
354 * Add DOCTYPE children to be parse in eina_simple_xml.
355
3562012-09-27 Carsten Haitzler (The Rasterman)
357
358 * Fix return value of eina_mmap_safety_enabled_set() and
359 ensure future eina_mmap_safety_enabled_get() return right value
360 on success.
361
3622012-10-17 Carsten Haitzler (The Rasterman)
363
364 * Add eina_barrier API to cover pthread_barrier functionality
365
3662012-10-19 Patryk Kaczmarek
367
368 * eina_stringshare_add_length return NULL when func args are wrong.
369
3702012-10-19 Cedric Bail
371
372 * Add eina_thread API.
373
3742012-11-10 Vincent Torri
375
376 * Fix build on Solaris
377
3782012-11-12 Mike Blumenkrantz
379
380 * Add eina_list_last_data_get
diff --git a/INSTALL b/INSTALL
deleted file mode 100644
index 23e5f25..0000000
--- a/INSTALL
+++ /dev/null
@@ -1,236 +0,0 @@
1Installation Instructions
2*************************
3
4Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
5Software Foundation, Inc.
6
7This file is free documentation; the Free Software Foundation gives
8unlimited permission to copy, distribute and modify it.
9
10Basic Installation
11==================
12
13These are generic installation instructions.
14
15 The `configure' shell script attempts to guess correct values for
16various system-dependent variables used during compilation. It uses
17those values to create a `Makefile' in each directory of the package.
18It may also create one or more `.h' files containing system-dependent
19definitions. Finally, it creates a shell script `config.status' that
20you can run in the future to recreate the current configuration, and a
21file `config.log' containing compiler output (useful mainly for
22debugging `configure').
23
24 It can also use an optional file (typically called `config.cache'
25and enabled with `--cache-file=config.cache' or simply `-C') that saves
26the results of its tests to speed up reconfiguring. (Caching is
27disabled by default to prevent problems with accidental use of stale
28cache files.)
29
30 If you need to do unusual things to compile the package, please try
31to figure out how `configure' could check whether to do them, and mail
32diffs or instructions to the address given in the `README' so they can
33be considered for the next release. If you are using the cache, and at
34some point `config.cache' contains results you don't want to keep, you
35may remove or edit it.
36
37 The file `configure.ac' (or `configure.in') is used to create
38`configure' by a program called `autoconf'. You only need
39`configure.ac' if you want to change it or regenerate `configure' using
40a newer version of `autoconf'.
41
42The simplest way to compile this package is:
43
44 1. `cd' to the directory containing the package's source code and type
45 `./configure' to configure the package for your system. If you're
46 using `csh' on an old version of System V, you might need to type
47 `sh ./configure' instead to prevent `csh' from trying to execute
48 `configure' itself.
49
50 Running `configure' takes awhile. While running, it prints some
51 messages telling which features it is checking for.
52
53 2. Type `make' to compile the package.
54
55 3. Optionally, type `make check' to run any self-tests that come with
56 the package.
57
58 4. Type `make install' to install the programs and any data files and
59 documentation.
60
61 5. You can remove the program binaries and object files from the
62 source code directory by typing `make clean'. To also remove the
63 files that `configure' created (so you can compile the package for
64 a different kind of computer), type `make distclean'. There is
65 also a `make maintainer-clean' target, but that is intended mainly
66 for the package's developers. If you use it, you may have to get
67 all sorts of other programs in order to regenerate files that came
68 with the distribution.
69
70Compilers and Options
71=====================
72
73Some systems require unusual options for compilation or linking that the
74`configure' script does not know about. Run `./configure --help' for
75details on some of the pertinent environment variables.
76
77 You can give `configure' initial values for configuration parameters
78by setting variables in the command line or in the environment. Here
79is an example:
80
81 ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
82
83 *Note Defining Variables::, for more details.
84
85Compiling For Multiple Architectures
86====================================
87
88You can compile the package for more than one kind of computer at the
89same time, by placing the object files for each architecture in their
90own directory. To do this, you must use a version of `make' that
91supports the `VPATH' variable, such as GNU `make'. `cd' to the
92directory where you want the object files and executables to go and run
93the `configure' script. `configure' automatically checks for the
94source code in the directory that `configure' is in and in `..'.
95
96 If you have to use a `make' that does not support the `VPATH'
97variable, you have to compile the package for one architecture at a
98time in the source code directory. After you have installed the
99package for one architecture, use `make distclean' before reconfiguring
100for another architecture.
101
102Installation Names
103==================
104
105By default, `make install' installs the package's commands under
106`/usr/local/bin', include files under `/usr/local/include', etc. You
107can specify an installation prefix other than `/usr/local' by giving
108`configure' the option `--prefix=PREFIX'.
109
110 You can specify separate installation prefixes for
111architecture-specific files and architecture-independent files. If you
112pass the option `--exec-prefix=PREFIX' to `configure', the package uses
113PREFIX as the prefix for installing programs and libraries.
114Documentation and other data files still use the regular prefix.
115
116 In addition, if you use an unusual directory layout you can give
117options like `--bindir=DIR' to specify different values for particular
118kinds of files. Run `configure --help' for a list of the directories
119you can set and what kinds of files go in them.
120
121 If the package supports it, you can cause programs to be installed
122with an extra prefix or suffix on their names by giving `configure' the
123option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
124
125Optional Features
126=================
127
128Some packages pay attention to `--enable-FEATURE' options to
129`configure', where FEATURE indicates an optional part of the package.
130They may also pay attention to `--with-PACKAGE' options, where PACKAGE
131is something like `gnu-as' or `x' (for the X Window System). The
132`README' should mention any `--enable-' and `--with-' options that the
133package recognizes.
134
135 For packages that use the X Window System, `configure' can usually
136find the X include and library files automatically, but if it doesn't,
137you can use the `configure' options `--x-includes=DIR' and
138`--x-libraries=DIR' to specify their locations.
139
140Specifying the System Type
141==========================
142
143There may be some features `configure' cannot figure out automatically,
144but needs to determine by the type of machine the package will run on.
145Usually, assuming the package is built to be run on the _same_
146architectures, `configure' can figure that out, but if it prints a
147message saying it cannot guess the machine type, give it the
148`--build=TYPE' option. TYPE can either be a short name for the system
149type, such as `sun4', or a canonical name which has the form:
150
151 CPU-COMPANY-SYSTEM
152
153where SYSTEM can have one of these forms:
154
155 OS KERNEL-OS
156
157 See the file `config.sub' for the possible values of each field. If
158`config.sub' isn't included in this package, then this package doesn't
159need to know the machine type.
160
161 If you are _building_ compiler tools for cross-compiling, you should
162use the option `--target=TYPE' to select the type of system they will
163produce code for.
164
165 If you want to _use_ a cross compiler, that generates code for a
166platform different from the build platform, you should specify the
167"host" platform (i.e., that on which the generated programs will
168eventually be run) with `--host=TYPE'.
169
170Sharing Defaults
171================
172
173If you want to set default values for `configure' scripts to share, you
174can create a site shell script called `config.site' that gives default
175values for variables like `CC', `cache_file', and `prefix'.
176`configure' looks for `PREFIX/share/config.site' if it exists, then
177`PREFIX/etc/config.site' if it exists. Or, you can set the
178`CONFIG_SITE' environment variable to the location of the site script.
179A warning: not all `configure' scripts look for a site script.
180
181Defining Variables
182==================
183
184Variables not defined in a site shell script can be set in the
185environment passed to `configure'. However, some packages may run
186configure again during the build, and the customized values of these
187variables may be lost. In order to avoid this problem, you should set
188them in the `configure' command line, using `VAR=value'. For example:
189
190 ./configure CC=/usr/local2/bin/gcc
191
192causes the specified `gcc' to be used as the C compiler (unless it is
193overridden in the site shell script). Here is a another example:
194
195 /bin/bash ./configure CONFIG_SHELL=/bin/bash
196
197Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
198configuration-related scripts to be executed by `/bin/bash'.
199
200`configure' Invocation
201======================
202
203`configure' recognizes the following options to control how it operates.
204
205`--help'
206`-h'
207 Print a summary of the options to `configure', and exit.
208
209`--version'
210`-V'
211 Print the version of Autoconf used to generate the `configure'
212 script, and exit.
213
214`--cache-file=FILE'
215 Enable the cache: use and save the results of the tests in FILE,
216 traditionally `config.cache'. FILE defaults to `/dev/null' to
217 disable caching.
218
219`--config-cache'
220`-C'
221 Alias for `--cache-file=config.cache'.
222
223`--quiet'
224`--silent'
225`-q'
226 Do not print messages saying which checks are being made. To
227 suppress all normal output, redirect it to `/dev/null' (any error
228 messages will still be shown).
229
230`--srcdir=DIR'
231 Look for the package's source code in directory DIR. Usually
232 `configure' can determine that directory automatically.
233
234`configure' also accepts some other, not widely useful, options. Run
235`configure --help' for more details.
236
diff --git a/Makefile.am b/Makefile.am
deleted file mode 100644
index 6f3c429..0000000
--- a/Makefile.am
+++ /dev/null
@@ -1,113 +0,0 @@
1## Process this file with automake to produce Makefile.in
2
3ACLOCAL_AMFLAGS = -I m4 -I m4/common -I m4/eina
4
5SUBDIRS = src doc
6
7MAINTAINERCLEANFILES = \
8Makefile.in \
9aclocal.m4 \
10config.cache \
11config.cache-env \
12config.guess \
13config.h.in \
14config.h.in~ \
15config.sub \
16configure \
17depcomp \
18install-sh \
19ltconfig \
20ltmain.sh \
21missing \
22$(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz \
23$(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.bz2 \
24$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)-doc.tar.bz2 \
25m4/libtool.m4 \
26m4/lt~obsolete.m4 \
27m4/ltoptions.m4 \
28m4/ltsugar.m4 \
29m4/ltversion.m4
30
31pkgconfigdir = $(libdir)/pkgconfig
32pkgconfig_DATA = eina.pc
33
34EXTRA_DIST = \
35AUTHORS \
36COPYING \
37README \
38$(pkgconfig_DATA) \
39autogen.sh \
40eina.pc.in \
41eina.spec \
42eina.spec.in \
43m4/common/efl_attribute.m4 \
44m4/common/efl_benchmark.m4 \
45m4/common/efl_check_funcs.m4 \
46m4/common/efl_compiler_flag.m4 \
47m4/common/efl_cpu.m4 \
48m4/common/efl_doxygen.m4 \
49m4/common/efl_examples.m4 \
50m4/common/efl_path_max.m4 \
51m4/common/efl_tests.m4 \
52m4/common/efl_threads.m4 \
53m4/common/efl_voltron.m4 \
54m4/eina/eina_bench.m4 \
55m4/eina/eina_check.m4
56
57.PHONY: doc benchmark
58
59# Documentation
60
61doc:
62 @echo "entering doc/"
63 @cd doc && $(MAKE) doc
64
65# Unit tests
66
67if EFL_ENABLE_TESTS
68
69lcov-reset:
70 @rm -rf $(top_builddir)/coverage
71 @find $(top_builddir) -name "*.gcda" -delete
72 @lcov --zerocounters --directory $(top_builddir)
73
74lcov-report:
75 @mkdir $(top_builddir)/coverage
76 lcov --capture --compat-libtool --output-file $(top_builddir)/coverage/coverage.info --directory $(top_builddir)
77 lcov --remove $(top_builddir)/coverage/coverage.info '*.h' --output-file $(top_builddir)/coverage/coverage.cleaned.info
78 genhtml -t "$(PACKAGE_STRING)" -o $(top_builddir)/coverage/html $(top_builddir)/coverage/coverage.cleaned.info
79 @echo "Coverage Report at $(top_builddir)/coverage/html"
80
81check-local:
82 @$(MAKE) lcov-reset
83 @./src/tests/eina_suite
84 @$(MAKE) lcov-report
85
86else
87
88lcov-reset:
89 @echo "reconfigure with --enable-tests"
90
91lcov-report:
92 @echo "reconfigure with --enable-tests"
93
94check-local:
95 @echo "reconfigure with --enable-tests"
96
97endif
98
99if EFL_ENABLE_BENCHMARK
100
101benchmark:
102 @cd src && $(MAKE) benchmark
103 @mkdir result || true
104 @cd result && ../src/tests/eina_bench `date +%F_%s`
105
106else
107
108benchmark:
109 @echo "reconfigure with --enable-benchmark"
110endif
111
112clean-local:
113 @rm -rf coverage benchmark
diff --git a/NEWS b/NEWS
deleted file mode 100644
index 70a4d2d..0000000
--- a/NEWS
+++ /dev/null
@@ -1,131 +0,0 @@
1Eina 1.8.0
2
3Changes since Eina 1.7.0:
4-------------------------
5
6Additions:
7 * Add DOCTYPE children parsing in eina_simple_xml
8 * Add eina_barrier thread API
9 * Add eina_thread API.
10 * Add eina_list_last_data_get
11
12Improvements:
13 * Speedup Eina Rbtree Iterator by recycling memory instead of massively calling malloc/free.
14
15Fixes:
16 * Fix return value of eina_mmap_safety_enabled_set() and future
17 eina_mmap_safety_enabled_get() returns after success
18
19Eina 1.7.0
20
21Changes since Eina 1.2.0:
22-------------------------
23
24Additions:
25 * Add backtrace support to Eina_Log, use EINA_LOG_BACKTRACE to enable it.
26 * Add an helper to iterate over line in a mapped file.
27 * Add EINA_SENTINEL to protect variadic functions
28 * Add EINA_SAFETY checks for proper function arguments.
29 * Add check if given arguments (distance and coordinates) in eina_tiler
30 and eina_rectangle are not below zero
31
32Fixes:
33 * Add missing files in the tarball.
34 * Rounding issue with eina_f32p32_cos and eina_f32p32_sin when getting close to 1.0.
35 * Portability issue with Eina_Value when char are not signed by default (case on ARM
36 and PPC).
37 * Portability issue with Eina_Value test suite when unsigned where not promoted to
38 unsigned long (case on Itanium).
39 * Fix issue in the XML parser when a tag was in a comment or a CDATA.
40 * Implement eina_file_map_lines() on Windows.
41 * Handle NULL in all eina_*_free function.
42 * eina_log_console_color_set()
43 * Documentation for eina list specified and eina stringshare fixed.
44 * eina_convert_atofp wrong return value if fp is NULL.
45
46Removal:
47 * configure options: --disable-posix-threads, --disable-win32-threads,
48 --enable-coverage
49
50Eina 1.2.0
51
52Changes since Eina 1.1.0:
53-------------------------
54
55Additions:
56
57 * eina_mempool_calloc.
58 * Eina_Semaphore abstraction API.
59 * eina_xattr_fd_ls.
60 * Eina_Xattr iterator : eina_xattr_value_fd_ls and eina_xattr_value_ls.
61 * eina_file_map_faulted.
62 * Xattr iterator for Eina_File : eina_file_xattr_get/value_get.
63 * deprecated eina_array_count_get(), use eina_array_count() instead.
64 * eina_inarray data type.
65 * eina_value data type (generic value storage).
66 * eina_file_stat.
67 * eina_log*level_check.
68 * eina_*buf_manage_new_length.
69 * EINA_C_ARRAY_LENGTH macro.
70 * Eina_Stringshare typedef.
71 * add eina_file_map_faulted() for windows port (was missing).
72
73Fixes:
74
75 * compilation errors in Eina_RWLock when building on Windows newer than XP.
76 * stop leaking Eina_File.
77 * remove dead lock in Eina_File.
78 * bug on eina_shutdown when using eina_error.
79 * NONNULL argument for eina_hash_find.
80 * compilation of eina_semaphore_lock on Windows.
81 * forgotten initialization of eina list count during eina_list_split_list.
82 * leak in Eina_File.
83 * deadlock in Eina_File.
84 * make it possible to force the number of detected CPU on a system.
85
86Improvements:
87
88 * faster implementation of Eina_Rbtree.
89 * let eina_hash_free behave like free.
90
91Eina 1.1.0 (2011-12-02)
92
93Changes since Eina 1.0.0:
94-------------------------
95
96Additions:
97
98 * eina_unicode_strndup API
99 * EINA_INLIST_FOREACH_SAFE API
100 * eina unicode UTF8 convenience calls API
101 * eina_list_move functions to move list nodes from list to list directly
102 * simple SAX XML parser API added
103 * inlist sort and sorted insert API
104 * mempool repack API
105 * eina_file API for portable file memory-mapping with IO saffety traps
106 * thread locks, conditions etc. wrapper API for portability
107 * prefix API for apps or libs to find their runtime prefix location
108 * refcount macro API
109 * binbuf for binary extendable buffers API
110 * eina_hash_free_cb_set API
111 * eina_main_loop_is API
112 * eina_strbuf_manage_new and eina_ustrbuf_manage_new APIs
113 * eina_xattr API's
114 * eina_hash_murmur3 API
115
116Fixes:
117
118 * compilation problems with some configure options
119 * stat issue if file size is in bytes and serial number overran 32bits
120 * uninstall of mempool modules
121 * static build of buddy mempool
122 * stringshare multi-init bug
123 * windows port of eina_sched_prio_drop
124 * eina_hash_set to handle data being NULL like eina_hash_del
125 * static linking to eina (iconv can be avoided)
126 * eina_share_common_del and eina_share_common_ref unlock bug
127
128Improvements:
129
130 * scalability/speed improvements in Chained Mempool
131 * stringshare as storage for eina error strings now
diff --git a/README b/README
deleted file mode 100644
index 7b6794a..0000000
--- a/README
+++ /dev/null
@@ -1,45 +0,0 @@
1Eina 1.7.99
2
3******************************************************************************
4
5 FOR ANY ISSUES PLEASE EMAIL:
6 enlightenment-devel@lists.sourceforge.net
7
8******************************************************************************
9
10Requirements:
11-------------
12Must have:
13 libc (pthread or windows threading support, iconv support)
14
15Eina is a library providing data structure utilities for EFL that are meant
16to be lean, efficient and tailored to EFL's needs. This saves each
17library implementing its own custom datatype handling and duplicating
18the code. Some of the datatypes handles are:
19 Arrays (variable sized, including inline members)
20 Hash tables
21 Inlined linked lists
22 Linked lists
23 Matricies
24 Quadtrees
25 Red/black trees
26 Stringbuffers (expandable string buffers)
27
28In addition Eina supports shared string token hashes with Stringshare
29and Unistringshare (standard ascii/utf8 strings and full unicode
30strings). It has a Trash pointer collector for deferring freeing until
31work is complete on a dataset, Unicode string wrapping and handling,
32UTF8 string parsing, 2D tile structure handling and rectangle
33utilities, module loading wrapper, Memory pools for faster allocation
34and less fragmentation of the heap, Output logging and selective
35aborting on critical enough states, fixed point math functions, CPU
36feature detection (like MMX, SSE, VFP, NEON etc.), Counters, binary
37token sharing and more.
38
39------------------------------------------------------------------------------
40COMPILING AND INSTALLING:
41
42 ./configure
43 make
44(do this as root unless you are installing in your users directories):
45 make install
diff --git a/autogen.sh b/autogen.sh
deleted file mode 100755
index 25b7c2f..0000000
--- a/autogen.sh
+++ /dev/null
@@ -1,39 +0,0 @@
1#!/bin/sh
2
3rm -rf autom4te.cache
4rm -f aclocal.m4 ltmain.sh
5
6touch README
7touch ABOUT-NLS
8
9echo "Running aclocal..." ; aclocal $ACLOCAL_FLAGS -I m4 -I m4/common -I m4/eina || exit 1
10echo "Running autoheader..." ; autoheader || exit 1
11echo "Running autoconf..." ; autoconf || exit 1
12echo "Running libtoolize..." ; (libtoolize --copy --automake || glibtoolize --automake) || exit 1
13echo "Running automake..." ; automake --add-missing --copy --gnu || exit 1
14
15W=0
16
17rm -f config.cache-env.tmp
18echo "OLD_PARM=\"$@\"" >> config.cache-env.tmp
19echo "OLD_CFLAGS=\"$CFLAGS\"" >> config.cache-env.tmp
20echo "OLD_PATH=\"$PATH\"" >> config.cache-env.tmp
21echo "OLD_PKG_CONFIG_PATH=\"$PKG_CONFIG_PATH\"" >> config.cache-env.tmp
22echo "OLD_LDFLAGS=\"$LDFLAGS\"" >> config.cache-env.tmp
23
24cmp config.cache-env.tmp config.cache-env >> /dev/null
25if [ $? -ne 0 ]; then
26 W=1;
27fi
28
29if [ $W -ne 0 ]; then
30 echo "Cleaning configure cache...";
31 rm -f config.cache config.cache-env
32 mv config.cache-env.tmp config.cache-env
33else
34 rm -f config.cache-env.tmp
35fi
36
37if [ -z "$NOCONFIGURE" ]; then
38 ./configure -C "$@"
39fi
diff --git a/configure.ac b/configure.ac
deleted file mode 100644
index 641e141..0000000
--- a/configure.ac
+++ /dev/null
@@ -1,677 +0,0 @@
1##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
2##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
3m4_define([v_maj], [1])
4m4_define([v_min], [7])
5m4_define([v_mic], [99])
6m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v '\(export\|Unversioned directory\)' || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n']))
7m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null | (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d '\n']))])
8##-- When released, remove the dnl on the below line
9dnl m4_undefine([v_rev])
10##-- When doing snapshots - change soname. remove dnl on below line
11dnl m4_define([relname], [ver-pre-svn-07])
12dnl m4_define([v_rel], [-release relname])
13##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
14m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])], [m4_define([v_ver], [v_maj.v_min.v_mic])])
15m4_define([lt_cur], m4_eval(v_maj + v_min))
16m4_define([lt_rev], v_mic)
17m4_define([lt_age], v_min)
18##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
19##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
20
21AC_INIT([eina], [v_ver], [enlightenment-devel@lists.sourceforge.net])
22AC_PREREQ([2.59])
23AC_CONFIG_SRCDIR([configure.ac])
24AC_CONFIG_MACRO_DIR([m4])
25
26AC_CONFIG_HEADERS([config.h])
27AH_TOP([
28#ifndef EFL_CONFIG_H__
29#define EFL_CONFIG_H__
30])
31AH_BOTTOM([
32#endif /* EFL_CONFIG_H__ */
33])
34
35AM_INIT_AUTOMAKE([1.6 dist-bzip2])
36m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
37
38AC_GNU_SOURCE
39AC_SYS_LARGEFILE
40
41#lt_cv_deplibs_check_method='pass_all'
42AC_LIBTOOL_WIN32_DLL
43define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl
44define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
45AC_PROG_LIBTOOL
46
47##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
48##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
49m4_ifdef([v_rev], , [m4_define([v_rev], [0])])
50m4_ifdef([v_rel], , [m4_define([v_rel], [])])
51AC_DEFINE_UNQUOTED(VMAJ, [v_maj], [Major version])
52AC_DEFINE_UNQUOTED(VMIN, [v_min], [Minor version])
53AC_DEFINE_UNQUOTED(VMIC, [v_mic], [Micro version])
54AC_DEFINE_UNQUOTED(VREV, [v_rev], [Revison])
55version_info="lt_cur:lt_rev:lt_age"
56release_info="v_rel"
57AC_SUBST(version_info)
58AC_SUBST(release_info)
59##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
60##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
61VMAJ=v_maj
62AC_SUBST(VMAJ)
63
64
65### Needed information
66
67AC_CANONICAL_BUILD
68AC_CANONICAL_HOST
69
70requirements_pc_eina=""
71
72have_wince="no"
73have_win32="no"
74case "$host_os" in
75 mingw32ce*)
76 have_win32="yes"
77 have_wince="yes"
78 MODULE_ARCH="$host_os-$host_cpu"
79 MODULE_EXT=".dll"
80 ;;
81 mingw*)
82 have_win32="yes"
83 MODULE_ARCH="$host_os-$host_cpu-v_maj.v_min.v_mic"
84 MODULE_EXT=".dll"
85 ;;
86 cygwin*)
87 MODULE_ARCH="$host_os-$host_cpu-v_maj.v_min.v_mic"
88 MODULE_EXT=".dll"
89 ;;
90 *)
91 MODULE_ARCH="$host_os-$host_cpu-v_maj.v_min.v_mic"
92 MODULE_EXT=".so"
93 ;;
94esac
95AM_CONDITIONAL([EINA_HAVE_WINCE], [test "x$have_wince" = "xyes"])
96AM_CONDITIONAL([EINA_HAVE_WIN32], [test "x$have_win32" = "xyes"])
97AC_SUBST([MODULE_ARCH])
98AC_DEFINE_UNQUOTED([MODULE_ARCH], ["${MODULE_ARCH}"], ["Module architecture"])
99AC_DEFINE_UNQUOTED([SHARED_LIB_SUFFIX], ["${MODULE_EXT}"], [Suffix for shared objects])
100
101EFL_CHECK_CPU_MMX([have_mmx="yes"], [have_mmx="no"])
102EFL_CHECK_CPU_SSE([have_sse="yes"], [have_sse="no"])
103EFL_CHECK_CPU_SSE2([have_sse2="yes"], [have_sse2="no"])
104EFL_CHECK_CPU_ALTIVEC([have_altivec="yes"], [have_altivec="no"])
105
106EFL_CHECK_THREADS
107
108if ! test "x${efl_have_threads}" = "xno" ; then
109 EINA_CONFIGURE_HAVE_THREADS="#define EINA_HAVE_THREADS"
110fi
111if ! test "x${efl_have_pthread_barrier}" = "xno" ; then
112 EINA_CONFIGURE_HAVE_PTHREAD_BARRIER="#define EINA_HAVE_PTHREAD_BARRIER"
113fi
114AC_SUBST(EINA_CONFIGURE_HAVE_THREADS)
115AC_SUBST(EINA_CONFIGURE_HAVE_PTHREAD_BARRIER)
116AM_CONDITIONAL([EINA_HAVE_THREADS], [! test "x${efl_have_threads}" = "xno"])
117
118if test "x${efl_have_debug_threads}" = "xyes"; then
119 EINA_CONFIGURE_HAVE_DEBUG_THREADS="#define EINA_HAVE_DEBUG_THREADS"
120fi
121AC_SUBST(EINA_CONFIGURE_HAVE_DEBUG_THREADS)
122AM_CONDITIONAL([EINA_DEBUG_THREADS], [test "x${efl_have_debug_threads}" = "xyes"])
123
124if ! test "x${efl_have_on_off_threads}" = "xno"; then
125 EINA_CONFIGURE_HAVE_ON_OFF_THREADS="#define EINA_HAVE_ON_OFF_THREADS"
126fi
127AC_SUBST(EINA_CONFIGURE_HAVE_ON_OFF_THREADS)
128AM_CONDITIONAL([EINA_ON_OFF_THREADS], [! test "x${efl_have_on_off_threads}" = "xno"])
129
130if ! test "x${efl_have_setaffinity}" = "xno" ; then
131 EINA_CONFIGURE_HAVE_PTHREAD_SETAFFINITY="#define EINA_HAVE_PTHREAD_AFFINITY"
132fi
133AC_SUBST(EINA_CONFIGURE_HAVE_PTHREAD_SETAFFINITY)
134
135### Additional options to configure
136
137# Magic debug
138AC_ARG_ENABLE([magic-debug],
139 [AC_HELP_STRING([--disable-magic-debug], [disable magic debug of eina structure @<:@default=enabled@:>@])],
140 [
141 if test "x${enableval}" = "xyes" ; then
142 have_magic_debug="yes"
143 else
144 have_magic_debug="no"
145 fi
146 ],
147 [have_magic_debug="yes"])
148
149AC_MSG_CHECKING([whether magic debug is enable])
150AC_MSG_RESULT([${have_magic_debug}])
151
152if test "x${have_magic_debug}" = "xyes" ; then
153 EINA_CONFIGURE_MAGIC_DEBUG="#define EINA_MAGIC_DEBUG"
154fi
155AC_SUBST(EINA_CONFIGURE_MAGIC_DEBUG)
156
157# Safety checks (avoid crashes on wrong api usage)
158AC_ARG_ENABLE(safety-checks,
159 [AC_HELP_STRING([--disable-safety-checks], [disable safety checks for NULL pointers and like. @<:@default=enabled@:>@])],
160 [
161 if test "x${enableval}" = "xyes" ; then
162 have_safety_checks="yes"
163 else
164 have_safety_checks="no"
165 fi
166 ],
167 [have_safety_checks="yes"])
168
169AC_MSG_CHECKING(whether to do safety checking on api parameters)
170AC_MSG_RESULT($have_safety_checks)
171
172AM_CONDITIONAL(SAFETY_CHECKS, test "x$have_safety_checks" = "xyes")
173if test "x$have_safety_checks" = "xyes"; then
174 AC_DEFINE(EINA_SAFETY_CHECKS, 1, [disable safety checks for NULL pointers and like.])
175 EINA_CONFIGURE_SAFETY_CHECKS="#define EINA_SAFETY_CHECKS"
176fi
177AC_SUBST(EINA_CONFIGURE_SAFETY_CHECKS)
178
179with_max_log_level="<unset>"
180AC_ARG_WITH(internal-maximum-log-level,
181 [AC_HELP_STRING([--with-internal-maximum-log-level=NUMBER],
182 [limit eina internal log level to the given number, any call to EINA_LOG() with values greater than this will be compiled out, ignoring runtime settings, but saving function calls.])],
183 [
184 if test "x${withval}" != "xno"; then
185 if echo "${withval}" | grep -E '^[[0-9]]+$' >/dev/null 2>/dev/null; then
186 AC_MSG_NOTICE([ignoring any EINA_LOG() with level greater than ${withval}])
187 AC_DEFINE_UNQUOTED(EINA_LOG_LEVEL_MAXIMUM, ${withval}, [if set, logging is limited to this amount.])
188 with_max_log_level="${withval}"
189 else
190 AC_MSG_ERROR([--with-internal-maximum-log-level takes a decimal number, got "${withval}" instead.])
191 fi
192 fi
193 ], [:])
194
195AC_ARG_ENABLE([amalgamation],
196 [AC_HELP_STRING([--enable-amalgamation], [enable generation of one single file with all source code in it, helps compiler optimizations.])],
197 [if test "x${enableval}" = "xyes"; then
198 do_amalgamation="yes"
199 else
200 do_amalgamation="no"
201 fi
202 ],
203 [do_amalgamation="no"]
204)
205AM_CONDITIONAL(EINA_AMALGAMATION, test "x${do_amalgamation}" = "xyes")
206
207# Choose best memory pool
208AC_ARG_ENABLE([default-mempool],
209 [AC_HELP_STRING([--enable-default-mempool], [Default memory allocator could be faster for some computer. @<:@default=disabled@:>@])],
210 [
211 if test "x${enableval}" = "xyes"; then
212 have_default_mempool="yes"
213 else
214 have_default_mempool="no"
215 fi
216 ],
217 [have_default_mempool="no"]
218)
219AC_MSG_CHECKING([whether to use default mempool allocator])
220AC_MSG_RESULT([${have_default_mempool}])
221
222if test "x${have_default_mempool}" = "xyes" ; then
223 EINA_CONFIGURE_DEFAULT_MEMPOOL="#define EINA_DEFAULT_MEMPOOL"
224fi
225AC_SUBST(EINA_CONFIGURE_DEFAULT_MEMPOOL)
226
227# Report stringshare usage
228AC_ARG_ENABLE([stringshare-usage],
229 [AC_HELP_STRING([--enable-stringshare-usage], [Report stringshare usage on stringshare shutdown. @<:@default=disabled@:>@])],
230 [
231 if test "x${enableval}" = "xyes"; then
232 have_stringshare_usage="yes"
233 else
234 have_stringshare_usage="no"
235 fi
236 ],
237 [have_stringshare_usage="no"]
238)
239AC_MSG_CHECKING([whether to report stringshare usage])
240AC_MSG_RESULT([${have_stringshare_usage}])
241
242if test "x${have_stringshare_usage}" = "xyes"; then
243 AC_DEFINE(EINA_STRINGSHARE_USAGE, 1, [Report Eina stringshare usage pattern])
244fi
245
246# Assert or fail.
247
248AC_ARG_ENABLE([assert],
249 [AC_HELP_STRING([--enable-assert], [enable assert, @<:@default=no@:>@])],
250 [
251 if test "x${enableval}" = "xyes" ; then
252 prefer_assert="yes"
253 else
254 prefer_assert="no"
255 fi
256 ],
257 [prefer_assert="no"])
258
259# Check if we want to benchmark on real data
260enable_benchmark_e17="no"
261AC_ARG_ENABLE([e17],
262 [AC_HELP_STRING([--enable-e17], [enable heavy benchmark @<:@default=no@:>@])],
263 [
264 if test "x${enableval}" = "xyes" ; then
265 enable_benchmark_e17="yes"
266 else
267 enable_benchmark_e17="no"
268 fi
269 ],
270 [enable_benchmark_e17="no"])
271
272AC_MSG_CHECKING([whether e17 real data benchmark are built])
273AC_MSG_RESULT([${enable_benchmark_e17}])
274
275AM_CONDITIONAL(EINA_ENABLE_BENCHMARK_E17, test "x${enable_benchmark_e17}" = "xyes")
276
277
278### Checks for programs
279AC_PROG_CC
280#for src/tests...
281AC_PROG_CXX
282
283# pkg-config
284PKG_PROG_PKG_CONFIG
285
286# Check whether pkg-config supports Requires.private
287if $PKG_CONFIG --atleast-pkgconfig-version 0.22; then
288 pkgconfig_requires_private="Requires.private"
289else
290 pkgconfig_requires_private="Requires"
291fi
292AC_SUBST(pkgconfig_requires_private)
293
294# doxygen program for documentation building
295
296EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
297
298
299### Checks for libraries
300
301## Compatibility layers
302
303# Evil library for compilation on Windows
304
305EFL_EINA_BUILD=""
306case "$host_os" in
307 mingw*)
308 PKG_CHECK_EXISTS([evil >= 1.6.99])
309 AC_DEFINE([HAVE_EVIL], [1], [Set to 1 if Evil package is installed])
310 requirements_pc_eina="${requirements_pc_eina} evil"
311 EFL_EINA_BUILD="-DEFL_EINA_BUILD"
312 ;;
313esac
314AC_SUBST([EFL_EINA_BUILD])
315
316# Escape library for compilation on Playstation 3
317
318case "$host_vendor" in
319 ps3*)
320 PKG_CHECK_EXISTS([escape])
321 AC_DEFINE([HAVE_ESCAPE], [1], [Set to 1 if Escape package is installed])
322 requirements_pc_eina="${requirements_pc_eina} escape"
323 ;;
324esac
325
326# Exotic library for copilation on Coyote
327
328PKG_CHECK_EXISTS([exotic],
329 [
330 enable_exotic="yes"
331 AC_DEFINE([HAVE_EXOTIC_H], [1], [Define to 1 if you have Exotic.])
332 EINA_CONFIGURE_HAVE_EXOTIC="#define EINA_HAVE_EXOTIC"
333 requirements_pc_eina="exotic ${requirements_pc_eina}"
334 ],
335 [enable_exotic="no"])
336
337AM_CONDITIONAL([EINA_HAVE_EXOTIC], [test "x${enable_exotic}" = "xyes"])
338AC_SUBST([EINA_CONFIGURE_HAVE_EXOTIC])
339
340if ! test "x${requirements_pc_eina}" = "x" ; then
341 PKG_CHECK_MODULES([EINA], [${requirements_pc_eina}])
342fi
343
344## Options
345
346# Valgrind
347
348AC_ARG_ENABLE([valgrind],
349 [AC_HELP_STRING([--enable-valgrind], [improve valgrind support by hinting it of our memory usages, having it to report proper mempool leaks.])],
350 [
351 if test "x${enableval}" = "xyes" ; then
352 want_valgrind="yes"
353 else
354 want_valgrind="no"
355 fi
356 ],
357 [want_valgrind="auto"])
358
359AC_MSG_CHECKING([whether to enable build with valgrind])
360AC_MSG_RESULT([${want_valgrind}])
361
362if test "x${want_valgrind}" = "xyes" || test "x${want_valgrind}" = "xauto"; then
363 PKG_CHECK_MODULES([VALGRIND], [valgrind >= 2.4.0],
364 [
365 have_valgrind="yes"
366 requirements_pc_eina="valgrind ${requirements_pc_eina}"
367 ],
368 [
369 have_valgrind="no"
370 AC_DEFINE([NVALGRIND], [1], [Valgrind support disabled])
371 if test "x${want_valgrind}" = "xyes"; then
372 AC_MSG_ERROR([Valgrind >= 2.4.0 is required])
373 fi
374 ])
375else
376 AC_DEFINE([NVALGRIND], [1], [Valgrind support disabled])
377fi
378
379## Modules
380
381# Check ememoa memory pool library
382
383AC_ARG_ENABLE([ememoa],
384 [AC_HELP_STRING([--enable-ememoa], [build ememoa memory pool module @<:@default=yes@:>@])],
385 [
386 if test "x${enableval}" = "xyes" ; then
387 enable_ememoa="yes"
388 else
389 enable_ememoa="no"
390 fi
391 ],
392 [enable_ememoa="yes"])
393
394AC_MSG_CHECKING([whether to use ememoa for memory pool])
395AC_MSG_RESULT([${enable_ememoa}])
396
397if test "x${enable_ememoa}" = "xyes" ; then
398 PKG_CHECK_MODULES([EMEMOA],
399 [ememoa >= 0.0.26 ],
400 [enable_ememoa="yes"],
401 [enable_ememoa="no"])
402fi
403
404## Examples
405
406PKG_CHECK_MODULES([ECORE_EVAS],
407 [ecore-evas ecore evas],
408 [build_tiler_example="yes"],
409 [build_tiler_example="no"])
410
411AM_CONDITIONAL([BUILD_TILER_EXAMPLE], [test "x${build_tiler_example}" = "xyes"])
412
413### Checks for header files
414AC_HEADER_ASSERT
415AC_HEADER_TIME
416AC_HEADER_DIRENT
417
418AC_CHECK_HEADERS([unistd.h libgen.h inttypes.h stdint.h sys/types.h siginfo.h strings.h execinfo.h mcheck.h])
419
420# sys/mman.h could be provided by evil/escape/exotic so we need to set CFLAGS accordingly
421CFLAGS_save="${CFLAGS}"
422CFLAGS="${CFLAGS} ${EINA_CFLAGS}"
423AC_CHECK_HEADERS([sys/mman.h])
424CFLAGS="${CFLAGS_save}"
425
426if test "x${ac_cv_header_inttypes_h}" = "xyes" ; then
427 EINA_CONFIGURE_HAVE_INTTYPES_H="#define EINA_HAVE_INTTYPES_H"
428 AC_DEFINE([HAVE_INTTYPES_H], [1], [Define to 1 if you have the <inttypes.h> header file.])
429fi
430AC_SUBST([EINA_CONFIGURE_HAVE_INTTYPES_H])
431
432if test "x${ac_cv_header_inttypes_h}" = "xyes" ; then
433 EINA_CONFIGURE_HAVE_STDINT_H="#define EINA_HAVE_STDINT_H"
434 AC_DEFINE([HAVE_STDINT_H], [1], [Define to 1 if you have the <stdint.h> header file.])
435fi
436AC_SUBST([EINA_CONFIGURE_HAVE_STDINT_H])
437
438### Checks for types
439
440# wchar_t
441
442AC_CHECK_SIZEOF([wchar_t])
443EINA_SIZEOF_WCHAR_T=$ac_cv_sizeof_wchar_t
444AC_SUBST([EINA_SIZEOF_WCHAR_T])
445AC_CHECK_TYPES([siginfo_t], [], [],
446 [[
447#include <signal.h>
448#if HAVE_SIGINFO_H
449# include <siginfo.h>
450#endif
451 ]])
452
453# struct dirent
454
455AC_CHECK_TYPES([struct dirent], [have_dirent="yes"], [have_dirent="no"],
456 [[
457#include <dirent.h>
458 ]])
459
460if test "x${have_dirent}" = "xyes" ; then
461 EINA_CONFIGURE_HAVE_DIRENT_H="#define EINA_HAVE_DIRENT_H"
462 AC_DEFINE([HAVE_DIRENT_H], [1], [Define to 1 if you have a valid <dirent.h> header file.])
463fi
464AC_SUBST([EINA_CONFIGURE_HAVE_DIRENT_H])
465
466### Checks for structures
467
468### Checks for compiler characteristics
469AC_C_BIGENDIAN
470AC_C_INLINE
471AC_PROG_CC_STDC
472EFL_ATTRIBUTE_UNUSED
473
474m4_ifdef([v_mic],
475 [
476 EFL_COMPILER_FLAG([-Wall])
477 EFL_COMPILER_FLAG([-W])
478 ])
479
480EFL_COMPILER_FLAG([-Wshadow])
481
482EFL_CHECK_PATH_MAX
483
484### Checks for linker characteristics
485lt_enable_auto_import=""
486case "${host_os}" in
487 mingw*)
488 lt_enable_auto_import="-Wl,--enable-auto-import"
489 ;;
490esac
491AC_SUBST([lt_enable_auto_import])
492
493EFL_LINKER_FLAG([-fno-strict-aliasing])
494
495### Checks for library functions
496AC_FUNC_ALLOCA
497
498AC_CHECK_FUNCS([strlcpy openat fstatat fpathconf execvp backtrace backtrace_symbols malloc_usable_size mtrace])
499
500EFL_CHECK_FUNCS([eina], [dirfd dlopen dladdr fnmatch iconv shm_open setxattr])
501
502want_debug_malloc="no"
503AC_ARG_ENABLE([debug-malloc],
504 [AC_HELP_STRING([--enable-debug-malloc], [enable debugging of malloc usage overhead in our allocator @<:@default=enabled@:>@])],
505 [
506 if test "x${enableval}" = "xyes" ; then
507 want_debug_malloc="yes"
508 else
509 want_debug_malloc="no"
510 fi
511 ], [want_debug_malloc="no"])
512
513if test "x${ac_cv_func_malloc_usable_size}" = "xyes" && test "x${want_debug_malloc}" = "xyes"; then
514 AC_DEFINE([EINA_DEBUG_MALLOC], [1], [Turn on debugging overhead in mempool])
515fi
516
517AC_ARG_ENABLE([log],
518 [AC_HELP_STRING([--disable-log], [disable Eina_Log infrastructure completly @<:@default=enabled@:>@])],
519 [
520 if test "x${enableval}" = "xyes" ; then
521 want_log="yes"
522 else
523 want_log="no"
524 fi
525 ],
526 [want_log="yes"])
527
528enable_log="no"
529if test "x${efl_func_fnmatch}" = "xyes" && test "x${want_log}" = "xyes" ; then
530 enable_log="yes"
531fi
532
533AC_MSG_CHECKING([wether to build Eina_Log infrastructure])
534AC_MSG_RESULT([${enable_log}])
535
536if test "x${enable_log}" = "xyes"; then
537 EINA_CONFIGURE_ENABLE_LOG="#define EINA_ENABLE_LOG"
538 AC_DEFINE([HAVE_LOG], [1], [Define to 1 if we log support is on])
539fi
540AC_SUBST([EINA_CONFIGURE_ENABLE_LOG])
541
542
543### Modules
544
545if test "x${have_default_mempool}" = "xyes" ; then
546 enable_chained_pool="no"
547 enable_pass_through="static"
548else
549 enable_chained_pool="static"
550 enable_pass_through="no"
551fi
552
553enable_one_big="static"
554
555EINA_CHECK_MODULE([chained-pool], [${enable_chained_pool}], [chained pool])
556EINA_CHECK_MODULE([ememoa-fixed], [${enable_ememoa}], [ememoa fixed])
557EINA_CHECK_MODULE([ememoa-unknown], [${enable_ememoa}], [ememoa unknown])
558EINA_CHECK_MODULE([fixed-bitmap], [no], [fixed bitmap])
559EINA_CHECK_MODULE([pass-through], [${enable_pass_through}], [pass through])
560EINA_CHECK_MODULE([buddy], [no], [buddy])
561EINA_CHECK_MODULE([one-big], [${enable_one_big}], [one big])
562
563### Make the debug preprocessor configurable
564
565### Unit tests, coverage and benchmarking
566
567EFL_CHECK_TESTS([eina], [enable_tests="yes"], [enable_tests="no"])
568
569EFL_CHECK_BENCHMARK([enable_benchmark="yes"], [enable_benchmark="no"])
570EINA_BENCH_MODULE([glib], [${enable_benchmark}], [glib-2.0], [enable_benchmark_glib="yes"], [enable_benchmark_glib="no"])
571if test -n "$CXX" && test "x$enable_benchmark" = "xyes" ; then
572 AC_DEFINE_UNQUOTED([CITYHASH_BENCH], [1], [enable bench tests for google hash method])
573fi
574AM_CONDITIONAL([CITYHASH_BENCH], [test -n "$CXX" && test "x$enable_benchmark" = "xyes"])
575
576AC_SUBST([requirements_pc_eina])
577AC_SUBST([requirements_libs_eina])
578
579### Build and install examples
580EFL_CHECK_BUILD_EXAMPLES([enable_build_examples="yes"], [enable_build_examples="no"])
581EFL_CHECK_INSTALL_EXAMPLES([enable_install_examples="yes"], [enable_install_examples="no"])
582
583AC_CONFIG_FILES([
584Makefile
585eina.pc
586eina.spec
587doc/Makefile
588doc/Doxyfile
589src/Makefile
590src/include/Makefile
591src/include/eina_config.h
592src/lib/Makefile
593src/modules/Makefile
594src/modules/mp/Makefile
595src/modules/mp/chained_pool/Makefile
596src/modules/mp/ememoa_fixed/Makefile
597src/modules/mp/ememoa_unknown/Makefile
598src/modules/mp/pass_through/Makefile
599src/modules/mp/fixed_bitmap/Makefile
600src/modules/mp/buddy/Makefile
601src/modules/mp/one_big/Makefile
602src/tests/Makefile
603src/examples/Makefile
604src/scripts/Makefile
605])
606
607AC_OUTPUT
608
609#####################################################################
610## Info
611
612echo
613echo
614echo
615echo "------------------------------------------------------------------------"
616echo "$PACKAGE $VERSION"
617echo "------------------------------------------------------------------------"
618echo
619echo
620echo "Configuration Options Summary:"
621echo
622echo " Magic debug..........: ${have_magic_debug}"
623echo " Safety checks........: ${have_safety_checks}"
624echo " Maximum log level....: ${with_max_log_level}"
625echo " Report string usage..: ${have_stringshare_usage}"
626echo " Valgrind support.....: ${have_valgrind}"
627echo " Default mempool......: ${have_default_mempool}"
628echo " Log support..........: ${enable_log}"
629echo " Thread Support.......: ${efl_have_threads}"
630if test "${efl_have_threads}" = "POSIX" ; then
631echo " spinlock...........: ${efl_have_posix_threads_spinlock}"
632echo " barrier............: ${efl_have_pthread_barrier}"
633echo " affinity...........: ${efl_have_setaffinity}"
634echo " debug usage........: ${efl_have_debug_threads}"
635echo " on/off support.....: ${efl_have_on_off_threads}"
636fi
637echo " Amalgamation.........: ${do_amalgamation}"
638echo " Iconv support........: ${efl_func_iconv}"
639echo " File dirfd...........: ${efl_func_dirfd}"
640echo " File xattr...........: ${efl_func_setxattr}"
641echo " shm_open.............: ${efl_func_shm_open}"
642echo
643echo " Documentation........: ${build_doc}"
644echo " Tests................: ${enable_tests} (Coverage: ${efl_enable_coverage})"
645echo " Examples.............: ${enable_build_examples}"
646echo " Tiler Example........: ${build_tiler_example}"
647echo " Examples installed...: ${enable_install_examples}"
648echo " Benchmark............: ${enable_benchmark}"
649if test "x${enable_benchmark}" = "xyes" ; then
650echo " Glib...............: ${enable_benchmark_glib}"
651echo " E17 real data......: ${enable_benchmark_e17}"
652fi
653echo
654echo " CPU Specific Extensions:"
655echo " MMX................: ${have_mmx}"
656echo " SSE................: ${have_sse}"
657echo " SSE2...............: ${have_sse2}"
658echo " ALTIVEC............: ${have_altivec}"
659echo
660echo " Memory pools:"
661echo " Buddy..............: ${enable_buddy}"
662echo " Chained pool.......: ${enable_chained_pool}"
663echo " Ememoa fixed.......: ${enable_ememoa_fixed}"
664echo " Ememoa unknown.....: ${enable_ememoa_unknown}"
665echo " Fixed bitmap.......: ${enable_fixed_bitmap}"
666echo " One big............: ${enable_one_big}"
667echo " Pass through.......: ${enable_pass_through}"
668echo
669echo "Compilation............: make (or gmake)"
670echo " CPPFLAGS.............: $CPPFLAGS"
671echo " CFLAGS...............: $CFLAGS"
672echo " LDFLAGS..............: $LDFLAGS"
673echo
674echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')"
675echo " prefix...............: $prefix"
676echo
677EFL_FORM_VOLTRON
diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in
deleted file mode 100644
index 21f6ad8..0000000
--- a/doc/Doxyfile.in
+++ /dev/null
@@ -1,1678 +0,0 @@
1# Doxyfile 1.7.3
2
3# This file describes the settings to be used by the documentation system
4# doxygen (www.doxygen.org) for a project.
5#
6# All text after a hash (#) is considered a comment and will be ignored.
7# The format is:
8# TAG = value [value, ...]
9# For lists items can also be appended using:
10# TAG += value [value, ...]
11# Values that contain spaces should be placed between quotes (" ").
12
13#---------------------------------------------------------------------------
14# Project related configuration options
15#---------------------------------------------------------------------------
16
17# This tag specifies the encoding used for all characters in the config file
18# that follow. The default is UTF-8 which is also the encoding used for all
19# text before the first occurrence of this tag. Doxygen uses libiconv (or the
20# iconv built into libc) for the transcoding. See
21# http://www.gnu.org/software/libiconv for the list of possible encodings.
22
23DOXYFILE_ENCODING = UTF-8
24
25# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
26# by quotes) that should identify the project.
27
28PROJECT_NAME = Eina
29
30# The PROJECT_NUMBER tag can be used to enter a project or revision number.
31# This could be handy for archiving the generated documentation or
32# if some version control system is used.
33
34PROJECT_NUMBER = @PACKAGE_VERSION@
35
36# Using the PROJECT_BRIEF tag one can provide an optional one line description for a project that appears at the top of each page and should give viewer a quick idea about the purpose of the project. Keep the description short.
37
38PROJECT_BRIEF =
39
40# With the PROJECT_LOGO tag one can specify an logo or icon that is
41# included in the documentation. The maximum height of the logo should not
42# exceed 55 pixels and the maximum width should not exceed 200 pixels.
43# Doxygen will copy the logo to the output directory.
44
45PROJECT_LOGO =
46
47# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
48# base path where the generated documentation will be put.
49# If a relative path is entered, it will be relative to the location
50# where doxygen was started. If left blank the current directory will be used.
51
52OUTPUT_DIRECTORY = .
53
54# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
55# 4096 sub-directories (in 2 levels) under the output directory of each output
56# format and will distribute the generated files over these directories.
57# Enabling this option can be useful when feeding doxygen a huge amount of
58# source files, where putting all generated files in the same directory would
59# otherwise cause performance problems for the file system.
60
61CREATE_SUBDIRS = NO
62
63# The OUTPUT_LANGUAGE tag is used to specify the language in which all
64# documentation generated by doxygen is written. Doxygen will use this
65# information to generate all constant output in the proper language.
66# The default language is English, other supported languages are:
67# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
68# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
69# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
70# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
71# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,
72# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
73
74OUTPUT_LANGUAGE = English
75
76# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
77# include brief member descriptions after the members that are listed in
78# the file and class documentation (similar to JavaDoc).
79# Set to NO to disable this.
80
81BRIEF_MEMBER_DESC = YES
82
83# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
84# the brief description of a member or function before the detailed description.
85# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
86# brief descriptions will be completely suppressed.
87
88REPEAT_BRIEF = YES
89
90# This tag implements a quasi-intelligent brief description abbreviator
91# that is used to form the text in various listings. Each string
92# in this list, if found as the leading text of the brief description, will be
93# stripped from the text and the result after processing the whole list, is
94# used as the annotated text. Otherwise, the brief description is used as-is.
95# If left blank, the following values are used ("$name" is automatically
96# replaced with the name of the entity): "The $name class" "The $name widget"
97# "The $name file" "is" "provides" "specifies" "contains"
98# "represents" "a" "an" "the"
99
100ABBREVIATE_BRIEF =
101
102# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
103# Doxygen will generate a detailed section even if there is only a brief
104# description.
105
106ALWAYS_DETAILED_SEC = NO
107
108# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
109# inherited members of a class in the documentation of that class as if those
110# members were ordinary class members. Constructors, destructors and assignment
111# operators of the base classes will not be shown.
112
113INLINE_INHERITED_MEMB = NO
114
115# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
116# path before files name in the file list and in the header files. If set
117# to NO the shortest path that makes the file name unique will be used.
118
119FULL_PATH_NAMES = NO
120
121# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
122# can be used to strip a user-defined part of the path. Stripping is
123# only done if one of the specified strings matches the left-hand part of
124# the path. The tag can be used to show relative paths in the file list.
125# If left blank the directory from which doxygen is run is used as the
126# path to strip.
127
128STRIP_FROM_PATH =
129
130# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
131# the path mentioned in the documentation of a class, which tells
132# the reader which header file to include in order to use a class.
133# If left blank only the name of the header file containing the class
134# definition is used. Otherwise one should specify the include paths that
135# are normally passed to the compiler using the -I flag.
136
137STRIP_FROM_INC_PATH =
138
139# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
140# (but less readable) file names. This can be useful if your file system
141# doesn't support long names like on DOS, Mac, or CD-ROM.
142
143SHORT_NAMES = NO
144
145# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
146# will interpret the first line (until the first dot) of a JavaDoc-style
147# comment as the brief description. If set to NO, the JavaDoc
148# comments will behave just like regular Qt-style comments
149# (thus requiring an explicit @brief command for a brief description.)
150
151JAVADOC_AUTOBRIEF = YES
152
153# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
154# interpret the first line (until the first dot) of a Qt-style
155# comment as the brief description. If set to NO, the comments
156# will behave just like regular Qt-style comments (thus requiring
157# an explicit \brief command for a brief description.)
158
159QT_AUTOBRIEF = NO
160
161# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
162# treat a multi-line C++ special comment block (i.e. a block of //! or ///
163# comments) as a brief description. This used to be the default behaviour.
164# The new default is to treat a multi-line C++ comment block as a detailed
165# description. Set this tag to YES if you prefer the old behaviour instead.
166
167MULTILINE_CPP_IS_BRIEF = NO
168
169# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
170# member inherits the documentation from any documented member that it
171# re-implements.
172
173INHERIT_DOCS = YES
174
175# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
176# a new page for each member. If set to NO, the documentation of a member will
177# be part of the file/class/namespace that contains it.
178
179SEPARATE_MEMBER_PAGES = NO
180
181# The TAB_SIZE tag can be used to set the number of spaces in a tab.
182# Doxygen uses this value to replace tabs by spaces in code fragments.
183
184TAB_SIZE = 8
185
186# This tag can be used to specify a number of aliases that acts
187# as commands in the documentation. An alias has the form "name=value".
188# For example adding "sideeffect=\par Side Effects:\n" will allow you to
189# put the command \sideeffect (or @sideeffect) in the documentation, which
190# will result in a user-defined paragraph with heading "Side Effects:".
191# You can put \n's in the value part of an alias to insert newlines.
192
193ALIASES =
194
195# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
196# sources only. Doxygen will then generate output that is more tailored for C.
197# For instance, some of the names that are used will be different. The list
198# of all members will be omitted, etc.
199
200OPTIMIZE_OUTPUT_FOR_C = YES
201
202# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
203# sources only. Doxygen will then generate output that is more tailored for
204# Java. For instance, namespaces will be presented as packages, qualified
205# scopes will look different, etc.
206
207OPTIMIZE_OUTPUT_JAVA = NO
208
209# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
210# sources only. Doxygen will then generate output that is more tailored for
211# Fortran.
212
213OPTIMIZE_FOR_FORTRAN = NO
214
215# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
216# sources. Doxygen will then generate output that is tailored for
217# VHDL.
218
219OPTIMIZE_OUTPUT_VHDL = NO
220
221# Doxygen selects the parser to use depending on the extension of the files it
222# parses. With this tag you can assign which parser to use for a given extension.
223# Doxygen has a built-in mapping, but you can override or extend it using this
224# tag. The format is ext=language, where ext is a file extension, and language
225# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
226# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
227# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
228# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
229# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
230
231EXTENSION_MAPPING =
232
233# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
234# to include (a tag file for) the STL sources as input, then you should
235# set this tag to YES in order to let doxygen match functions declarations and
236# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
237# func(std::string) {}). This also makes the inheritance and collaboration
238# diagrams that involve STL classes more complete and accurate.
239
240BUILTIN_STL_SUPPORT = NO
241
242# If you use Microsoft's C++/CLI language, you should set this option to YES to
243# enable parsing support.
244
245CPP_CLI_SUPPORT = NO
246
247# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
248# Doxygen will parse them like normal C++ but will assume all classes use public
249# instead of private inheritance when no explicit protection keyword is present.
250
251SIP_SUPPORT = NO
252
253# For Microsoft's IDL there are propget and propput attributes to indicate getter
254# and setter methods for a property. Setting this option to YES (the default)
255# will make doxygen replace the get and set methods by a property in the
256# documentation. This will only work if the methods are indeed getting or
257# setting a simple type. If this is not the case, or you want to show the
258# methods anyway, you should set this option to NO.
259
260IDL_PROPERTY_SUPPORT = YES
261
262# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
263# tag is set to YES, then doxygen will reuse the documentation of the first
264# member in the group (if any) for the other members of the group. By default
265# all members of a group must be documented explicitly.
266
267DISTRIBUTE_GROUP_DOC = NO
268
269# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
270# the same type (for instance a group of public functions) to be put as a
271# subgroup of that type (e.g. under the Public Functions section). Set it to
272# NO to prevent subgrouping. Alternatively, this can be done per class using
273# the \nosubgrouping command.
274
275SUBGROUPING = YES
276
277# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
278# is documented as struct, union, or enum with the name of the typedef. So
279# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
280# with name TypeT. When disabled the typedef will appear as a member of a file,
281# namespace, or class. And the struct will be named TypeS. This can typically
282# be useful for C code in case the coding convention dictates that all compound
283# types are typedef'ed and only the typedef is referenced, never the tag name.
284
285TYPEDEF_HIDES_STRUCT = NO
286
287# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
288# determine which symbols to keep in memory and which to flush to disk.
289# When the cache is full, less often used symbols will be written to disk.
290# For small to medium size projects (<1000 input files) the default value is
291# probably good enough. For larger projects a too small cache size can cause
292# doxygen to be busy swapping symbols to and from disk most of the time
293# causing a significant performance penalty.
294# If the system has enough physical memory increasing the cache will improve the
295# performance by keeping more symbols in memory. Note that the value works on
296# a logarithmic scale so increasing the size by one will roughly double the
297# memory usage. The cache size is given by this formula:
298# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
299# corresponding to a cache size of 2^16 = 65536 symbols
300
301SYMBOL_CACHE_SIZE = 0
302
303#---------------------------------------------------------------------------
304# Build related configuration options
305#---------------------------------------------------------------------------
306
307# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
308# documentation are documented, even if no documentation was available.
309# Private class members and static file members will be hidden unless
310# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
311
312EXTRACT_ALL = NO
313
314# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
315# will be included in the documentation.
316
317EXTRACT_PRIVATE = NO
318
319# If the EXTRACT_STATIC tag is set to YES all static members of a file
320# will be included in the documentation.
321
322EXTRACT_STATIC = YES
323
324# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
325# defined locally in source files will be included in the documentation.
326# If set to NO only classes defined in header files are included.
327
328EXTRACT_LOCAL_CLASSES = NO
329
330# This flag is only useful for Objective-C code. When set to YES local
331# methods, which are defined in the implementation section but not in
332# the interface are included in the documentation.
333# If set to NO (the default) only methods in the interface are included.
334
335EXTRACT_LOCAL_METHODS = NO
336
337# If this flag is set to YES, the members of anonymous namespaces will be
338# extracted and appear in the documentation as a namespace called
339# 'anonymous_namespace{file}', where file will be replaced with the base
340# name of the file that contains the anonymous namespace. By default
341# anonymous namespaces are hidden.
342
343EXTRACT_ANON_NSPACES = NO
344
345# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
346# undocumented members of documented classes, files or namespaces.
347# If set to NO (the default) these members will be included in the
348# various overviews, but no documentation section is generated.
349# This option has no effect if EXTRACT_ALL is enabled.
350
351HIDE_UNDOC_MEMBERS = NO
352
353# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
354# undocumented classes that are normally visible in the class hierarchy.
355# If set to NO (the default) these classes will be included in the various
356# overviews. This option has no effect if EXTRACT_ALL is enabled.
357
358HIDE_UNDOC_CLASSES = NO
359
360# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
361# friend (class|struct|union) declarations.
362# If set to NO (the default) these declarations will be included in the
363# documentation.
364
365HIDE_FRIEND_COMPOUNDS = NO
366
367# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
368# documentation blocks found inside the body of a function.
369# If set to NO (the default) these blocks will be appended to the
370# function's detailed documentation block.
371
372HIDE_IN_BODY_DOCS = NO
373
374# The INTERNAL_DOCS tag determines if documentation
375# that is typed after a \internal command is included. If the tag is set
376# to NO (the default) then the documentation will be excluded.
377# Set it to YES to include the internal documentation.
378
379INTERNAL_DOCS = NO
380
381# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
382# file names in lower-case letters. If set to YES upper-case letters are also
383# allowed. This is useful if you have classes or files whose names only differ
384# in case and if your file system supports case sensitive file names. Windows
385# and Mac users are advised to set this option to NO.
386
387CASE_SENSE_NAMES = YES
388
389# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
390# will show members with their full class and namespace scopes in the
391# documentation. If set to YES the scope will be hidden.
392
393HIDE_SCOPE_NAMES = NO
394
395# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
396# will put a list of the files that are included by a file in the documentation
397# of that file.
398
399SHOW_INCLUDE_FILES = NO
400
401# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
402# will list include files with double quotes in the documentation
403# rather than with sharp brackets.
404
405FORCE_LOCAL_INCLUDES = NO
406
407# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
408# is inserted in the documentation for inline members.
409
410INLINE_INFO = YES
411
412# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
413# will sort the (detailed) documentation of file and class members
414# alphabetically by member name. If set to NO the members will appear in
415# declaration order.
416
417SORT_MEMBER_DOCS = NO
418
419# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
420# brief documentation of file, namespace and class members alphabetically
421# by member name. If set to NO (the default) the members will appear in
422# declaration order.
423
424SORT_BRIEF_DOCS = NO
425
426# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen
427# will sort the (brief and detailed) documentation of class members so that
428# constructors and destructors are listed first. If set to NO (the default)
429# the constructors will appear in the respective orders defined by
430# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.
431# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO
432# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
433
434SORT_MEMBERS_CTORS_1ST = NO
435
436# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
437# hierarchy of group names into alphabetical order. If set to NO (the default)
438# the group names will appear in their defined order.
439
440SORT_GROUP_NAMES = NO
441
442# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
443# sorted by fully-qualified names, including namespaces. If set to
444# NO (the default), the class list will be sorted only by class name,
445# not including the namespace part.
446# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
447# Note: This option applies only to the class list, not to the
448# alphabetical list.
449
450SORT_BY_SCOPE_NAME = NO
451
452# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper type resolution of all parameters of a function it will reject a
453# match between the prototype and the implementation of a member function even if there is only one candidate or it is obvious which candidate to choose by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen
454# will still accept a match between prototype and implementation in such cases.
455
456STRICT_PROTO_MATCHING = NO
457
458# The GENERATE_TODOLIST tag can be used to enable (YES) or
459# disable (NO) the todo list. This list is created by putting \todo
460# commands in the documentation.
461
462GENERATE_TODOLIST = YES
463
464# The GENERATE_TESTLIST tag can be used to enable (YES) or
465# disable (NO) the test list. This list is created by putting \test
466# commands in the documentation.
467
468GENERATE_TESTLIST = YES
469
470# The GENERATE_BUGLIST tag can be used to enable (YES) or
471# disable (NO) the bug list. This list is created by putting \bug
472# commands in the documentation.
473
474GENERATE_BUGLIST = YES
475
476# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
477# disable (NO) the deprecated list. This list is created by putting
478# \deprecated commands in the documentation.
479
480GENERATE_DEPRECATEDLIST= YES
481
482# The ENABLED_SECTIONS tag can be used to enable conditional
483# documentation sections, marked by \if sectionname ... \endif.
484
485ENABLED_SECTIONS =
486
487# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
488# the initial value of a variable or macro consists of for it to appear in
489# the documentation. If the initializer consists of more lines than specified
490# here it will be hidden. Use a value of 0 to hide initializers completely.
491# The appearance of the initializer of individual variables and macros in the
492# documentation can be controlled using \showinitializer or \hideinitializer
493# command in the documentation regardless of this setting.
494
495MAX_INITIALIZER_LINES = 30
496
497# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
498# at the bottom of the documentation of classes and structs. If set to YES the
499# list will mention the files that were used to generate the documentation.
500
501SHOW_USED_FILES = NO
502
503# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
504# This will remove the Files entry from the Quick Index and from the
505# Folder Tree View (if specified). The default is YES.
506
507SHOW_FILES = YES
508
509# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
510# Namespaces page.
511# This will remove the Namespaces entry from the Quick Index
512# and from the Folder Tree View (if specified). The default is YES.
513
514SHOW_NAMESPACES = YES
515
516# The FILE_VERSION_FILTER tag can be used to specify a program or script that
517# doxygen should invoke to get the current version for each file (typically from
518# the version control system). Doxygen will invoke the program by executing (via
519# popen()) the command <command> <input-file>, where <command> is the value of
520# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
521# provided by doxygen. Whatever the program writes to standard output
522# is used as the file version. See the manual for examples.
523
524FILE_VERSION_FILTER =
525
526# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
527# by doxygen. The layout file controls the global structure of the generated
528# output files in an output format independent way. The create the layout file
529# that represents doxygen's defaults, run doxygen with the -l option.
530# You can optionally specify a file name after the option, if omitted
531# DoxygenLayout.xml will be used as the name of the layout file.
532
533LAYOUT_FILE =
534
535#---------------------------------------------------------------------------
536# configuration options related to warning and progress messages
537#---------------------------------------------------------------------------
538
539# The QUIET tag can be used to turn on/off the messages that are generated
540# by doxygen. Possible values are YES and NO. If left blank NO is used.
541
542QUIET = NO
543
544# The WARNINGS tag can be used to turn on/off the warning messages that are
545# generated by doxygen. Possible values are YES and NO. If left blank
546# NO is used.
547
548WARNINGS = YES
549
550# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
551# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
552# automatically be disabled.
553
554WARN_IF_UNDOCUMENTED = YES
555
556# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
557# potential errors in the documentation, such as not documenting some
558# parameters in a documented function, or documenting parameters that
559# don't exist or using markup commands wrongly.
560
561WARN_IF_DOC_ERROR = YES
562
563# The WARN_NO_PARAMDOC option can be enabled to get warnings for
564# functions that are documented, but have no documentation for their parameters
565# or return value. If set to NO (the default) doxygen will only warn about
566# wrong or incomplete parameter documentation, but not about the absence of
567# documentation.
568
569WARN_NO_PARAMDOC = YES
570
571# The WARN_FORMAT tag determines the format of the warning messages that
572# doxygen can produce. The string should contain the $file, $line, and $text
573# tags, which will be replaced by the file and line number from which the
574# warning originated and the warning text. Optionally the format may contain
575# $version, which will be replaced by the version of the file (if it could
576# be obtained via FILE_VERSION_FILTER)
577
578WARN_FORMAT = "$file:$line: $text"
579
580# The WARN_LOGFILE tag can be used to specify a file to which warning
581# and error messages should be written. If left blank the output is written
582# to stderr.
583
584WARN_LOGFILE =
585
586#---------------------------------------------------------------------------
587# configuration options related to the input files
588#---------------------------------------------------------------------------
589
590# The INPUT tag can be used to specify the files and/or directories that contain
591# documented source files. You may enter file names like "myfile.cpp" or
592# directories like "/usr/src/myproject". Separate the files or directories
593# with spaces.
594
595INPUT = @top_srcdir@/src/include \
596 @top_srcdir@/src/lib
597
598# This tag can be used to specify the character encoding of the source files
599# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
600# also the default input encoding. Doxygen uses libiconv (or the iconv built
601# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
602# the list of possible encodings.
603
604INPUT_ENCODING = UTF-8
605
606# If the value of the INPUT tag contains directories, you can use the
607# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
608# and *.h) to filter out the source-files in the directories. If left
609# blank the following patterns are tested:
610# *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
611# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
612# *.f90 *.f *.for *.vhd *.vhdl
613
614FILE_PATTERNS = *.c \
615 *.h \
616 *.x
617
618# The RECURSIVE tag can be used to turn specify whether or not subdirectories
619# should be searched for input files as well. Possible values are YES and NO.
620# If left blank NO is used.
621
622RECURSIVE = YES
623
624# The EXCLUDE tag can be used to specify files and/or directories that should
625# excluded from the INPUT source files. This way you can easily exclude a
626# subdirectory from a directory tree whose root is specified with the INPUT tag.
627
628EXCLUDE = @top_builddir@/src/lib/eina_amalgamation.c
629
630# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
631# directories that are symbolic links (a Unix file system feature) are excluded
632# from the input.
633
634EXCLUDE_SYMLINKS = NO
635
636# If the value of the INPUT tag contains directories, you can use the
637# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
638# certain files from those directories. Note that the wildcards are matched
639# against the file with absolute path, so to exclude all test directories
640# for example use the pattern */test/*
641
642EXCLUDE_PATTERNS =
643
644# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
645# (namespaces, classes, functions, etc.) that should be excluded from the
646# output. The symbol name can be a fully qualified name, a word, or if the
647# wildcard * is used, a substring. Examples: ANamespace, AClass,
648# AClass::ANamespace, ANamespace::*Test
649
650EXCLUDE_SYMBOLS =
651
652# The EXAMPLE_PATH tag can be used to specify one or more files or
653# directories that contain example code fragments that are included (see
654# the \include command).
655
656EXAMPLE_PATH = @top_srcdir@/src/examples
657
658# If the value of the EXAMPLE_PATH tag contains directories, you can use the
659# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
660# and *.h) to filter out the source-files in the directories. If left
661# blank all files are included.
662
663EXAMPLE_PATTERNS =
664
665# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
666# searched for input files to be used with the \include or \dontinclude
667# commands irrespective of the value of the RECURSIVE tag.
668# Possible values are YES and NO. If left blank NO is used.
669
670EXAMPLE_RECURSIVE = NO
671
672# The IMAGE_PATH tag can be used to specify one or more files or
673# directories that contain image that are included in the documentation (see
674# the \image command).
675
676IMAGE_PATH = @top_srcdir@/doc/img \
677 @top_srcdir@/doc/benchmark
678
679# The INPUT_FILTER tag can be used to specify a program that doxygen should
680# invoke to filter for each input file. Doxygen will invoke the filter program
681# by executing (via popen()) the command <filter> <input-file>, where <filter>
682# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
683# input file. Doxygen will then use the output that the filter program writes
684# to standard output.
685# If FILTER_PATTERNS is specified, this tag will be
686# ignored.
687
688INPUT_FILTER =
689
690# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
691# basis.
692# Doxygen will compare the file name with each pattern and apply the
693# filter if there is a match.
694# The filters are a list of the form:
695# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
696# info on how filters are used. If FILTER_PATTERNS is empty or if
697# non of the patterns match the file name, INPUT_FILTER is applied.
698
699FILTER_PATTERNS =
700
701# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
702# INPUT_FILTER) will be used to filter the input files when producing source
703# files to browse (i.e. when SOURCE_BROWSER is set to YES).
704
705FILTER_SOURCE_FILES = NO
706
707# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
708# pattern. A pattern will override the setting for FILTER_PATTERN (if any)
709# and it is also possible to disable source filtering for a specific pattern
710# using *.ext= (so without naming a filter). This option only has effect when
711# FILTER_SOURCE_FILES is enabled.
712
713FILTER_SOURCE_PATTERNS =
714
715#---------------------------------------------------------------------------
716# configuration options related to source browsing
717#---------------------------------------------------------------------------
718
719# If the SOURCE_BROWSER tag is set to YES then a list of source files will
720# be generated. Documented entities will be cross-referenced with these sources.
721# Note: To get rid of all source code in the generated output, make sure also
722# VERBATIM_HEADERS is set to NO.
723
724SOURCE_BROWSER = NO
725
726# Setting the INLINE_SOURCES tag to YES will include the body
727# of functions and classes directly in the documentation.
728
729INLINE_SOURCES = NO
730
731# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
732# doxygen to hide any special comment blocks from generated source code
733# fragments. Normal C and C++ comments will always remain visible.
734
735STRIP_CODE_COMMENTS = YES
736
737# If the REFERENCED_BY_RELATION tag is set to YES
738# then for each documented function all documented
739# functions referencing it will be listed.
740
741REFERENCED_BY_RELATION = YES
742
743# If the REFERENCES_RELATION tag is set to YES
744# then for each documented function all documented entities
745# called/used by that function will be listed.
746
747REFERENCES_RELATION = YES
748
749# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
750# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
751# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
752# link to the source code.
753# Otherwise they will link to the documentation.
754
755REFERENCES_LINK_SOURCE = YES
756
757# If the USE_HTAGS tag is set to YES then the references to source code
758# will point to the HTML generated by the htags(1) tool instead of doxygen
759# built-in source browser. The htags tool is part of GNU's global source
760# tagging system (see http://www.gnu.org/software/global/global.html). You
761# will need version 4.8.6 or higher.
762
763USE_HTAGS = NO
764
765# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
766# will generate a verbatim copy of the header file for each class for
767# which an include is specified. Set to NO to disable this.
768
769VERBATIM_HEADERS = NO
770
771#---------------------------------------------------------------------------
772# configuration options related to the alphabetical class index
773#---------------------------------------------------------------------------
774
775# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
776# of all compounds will be generated. Enable this if the project
777# contains a lot of classes, structs, unions or interfaces.
778
779ALPHABETICAL_INDEX = YES
780
781# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
782# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
783# in which this list will be split (can be a number in the range [1..20])
784
785COLS_IN_ALPHA_INDEX = 2
786
787# In case all classes in a project start with a common prefix, all
788# classes will be put under the same header in the alphabetical index.
789# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
790# should be ignored while generating the index headers.
791
792IGNORE_PREFIX = eina_ \
793 _eina_ \
794 Eina_ \
795 _Eina_ \
796 EINA_ \
797 _EINA_
798
799#---------------------------------------------------------------------------
800# configuration options related to the HTML output
801#---------------------------------------------------------------------------
802
803# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
804# generate HTML output.
805
806GENERATE_HTML = YES
807
808# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
809# If a relative path is entered the value of OUTPUT_DIRECTORY will be
810# put in front of it. If left blank `html' will be used as the default path.
811
812HTML_OUTPUT = html
813
814# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
815# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
816# doxygen will generate files with .html extension.
817
818HTML_FILE_EXTENSION = .html
819
820# The HTML_HEADER tag can be used to specify a personal HTML header for
821# each generated HTML page. If it is left blank doxygen will generate a
822# standard header.
823
824HTML_HEADER = @srcdir@/head.html
825
826# The HTML_FOOTER tag can be used to specify a personal HTML footer for
827# each generated HTML page. If it is left blank doxygen will generate a
828# standard footer.
829
830HTML_FOOTER = @srcdir@/foot.html
831
832# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
833# style sheet that is used by each HTML page. It can be used to
834# fine-tune the look of the HTML output. If the tag is left blank doxygen
835# will generate a default style sheet. Note that doxygen will try to copy
836# the style sheet file to the HTML output directory, so don't put your own
837# stylesheet in the HTML output directory as well, or it will be erased!
838
839HTML_STYLESHEET = @srcdir@/e.css
840
841# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
842# Doxygen will adjust the colors in the stylesheet and background images
843# according to this color. Hue is specified as an angle on a colorwheel,
844# see http://en.wikipedia.org/wiki/Hue for more information.
845# For instance the value 0 represents red, 60 is yellow, 120 is green,
846# 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
847# The allowed range is 0 to 359.
848
849HTML_COLORSTYLE_HUE = 220
850
851# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
852# the colors in the HTML output. For a value of 0 the output will use
853# grayscales only. A value of 255 will produce the most vivid colors.
854
855HTML_COLORSTYLE_SAT = 100
856
857# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
858# the luminance component of the colors in the HTML output. Values below
859# 100 gradually make the output lighter, whereas values above 100 make
860# the output darker. The value divided by 100 is the actual gamma applied,
861# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
862# and 100 does not change the gamma.
863
864HTML_COLORSTYLE_GAMMA = 80
865
866# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
867# page will contain the date and time when the page was generated. Setting
868# this to NO can help when comparing the output of multiple runs.
869
870HTML_TIMESTAMP = YES
871
872# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
873# documentation will contain sections that can be hidden and shown after the
874# page has loaded. For this to work a browser that supports
875# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
876# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
877
878HTML_DYNAMIC_SECTIONS = YES
879
880# If the GENERATE_DOCSET tag is set to YES, additional index files
881# will be generated that can be used as input for Apple's Xcode 3
882# integrated development environment, introduced with OSX 10.5 (Leopard).
883# To create a documentation set, doxygen will generate a Makefile in the
884# HTML output directory. Running make will produce the docset in that
885# directory and running "make install" will install the docset in
886# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
887# it at startup.
888# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
889# for more information.
890
891GENERATE_DOCSET = YES
892
893# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
894# feed. A documentation feed provides an umbrella under which multiple
895# documentation sets from a single provider (such as a company or product suite)
896# can be grouped.
897
898DOCSET_FEEDNAME = "Doxygen generated docs"
899
900# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
901# should uniquely identify the documentation set bundle. This should be a
902# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
903# will append .docset to the name.
904
905DOCSET_BUNDLE_ID = org.enlightenment.Eina
906
907# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
908# the documentation publisher. This should be a reverse domain-name style
909# string, e.g. com.mycompany.MyDocSet.documentation.
910
911DOCSET_PUBLISHER_ID = org.enlightenment.Eina
912
913# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
914
915DOCSET_PUBLISHER_NAME = Enlightenment
916
917# If the GENERATE_HTMLHELP tag is set to YES, additional index files
918# will be generated that can be used as input for tools like the
919# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
920# of the generated HTML documentation.
921
922GENERATE_HTMLHELP = YES
923
924# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
925# be used to specify the file name of the resulting .chm file. You
926# can add a path in front of the file if the result should not be
927# written to the html output directory.
928
929CHM_FILE =
930
931# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
932# be used to specify the location (absolute path including file name) of
933# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
934# the HTML help compiler on the generated index.hhp.
935
936HHC_LOCATION =
937
938# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
939# controls if a separate .chi index file is generated (YES) or that
940# it should be included in the master .chm file (NO).
941
942GENERATE_CHI = NO
943
944# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
945# is used to encode HtmlHelp index (hhk), content (hhc) and project file
946# content.
947
948CHM_INDEX_ENCODING =
949
950# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
951# controls whether a binary table of contents is generated (YES) or a
952# normal table of contents (NO) in the .chm file.
953
954BINARY_TOC = NO
955
956# The TOC_EXPAND flag can be set to YES to add extra items for group members
957# to the contents of the HTML help documentation and to the tree view.
958
959TOC_EXPAND = NO
960
961# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
962# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated
963# that can be used as input for Qt's qhelpgenerator to generate a
964# Qt Compressed Help (.qch) of the generated HTML documentation.
965
966GENERATE_QHP = NO
967
968# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
969# be used to specify the file name of the resulting .qch file.
970# The path specified is relative to the HTML output folder.
971
972QCH_FILE =
973
974# The QHP_NAMESPACE tag specifies the namespace to use when generating
975# Qt Help Project output. For more information please see
976# http://doc.trolltech.com/qthelpproject.html#namespace
977
978QHP_NAMESPACE = org.enlightenment.Eina
979
980# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
981# Qt Help Project output. For more information please see
982# http://doc.trolltech.com/qthelpproject.html#virtual-folders
983
984QHP_VIRTUAL_FOLDER = doc
985
986# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
987# add. For more information please see
988# http://doc.trolltech.com/qthelpproject.html#custom-filters
989
990QHP_CUST_FILTER_NAME =
991
992# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the
993# custom filter to add. For more information please see
994# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">
995# Qt Help Project / Custom Filters</a>.
996
997QHP_CUST_FILTER_ATTRS =
998
999# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
1000# project's
1001# filter section matches.
1002# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">
1003# Qt Help Project / Filter Attributes</a>.
1004
1005QHP_SECT_FILTER_ATTRS =
1006
1007# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
1008# be used to specify the location of Qt's qhelpgenerator.
1009# If non-empty doxygen will try to run qhelpgenerator on the generated
1010# .qhp file.
1011
1012QHG_LOCATION =
1013
1014# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
1015# will be generated, which together with the HTML files, form an Eclipse help
1016# plugin. To install this plugin and make it available under the help contents
1017# menu in Eclipse, the contents of the directory containing the HTML and XML
1018# files needs to be copied into the plugins directory of eclipse. The name of
1019# the directory within the plugins directory should be the same as
1020# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
1021# the help appears.
1022
1023GENERATE_ECLIPSEHELP = NO
1024
1025# A unique identifier for the eclipse help plugin. When installing the plugin
1026# the directory name containing the HTML and XML files should also have
1027# this name.
1028
1029ECLIPSE_DOC_ID = org.enlightenment.Eina
1030
1031# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
1032# top of each HTML page. The value NO (the default) enables the index and
1033# the value YES disables it.
1034
1035DISABLE_INDEX = YES
1036
1037# This tag can be used to set the number of enum values (range [0,1..20])
1038# that doxygen will group on one line in the generated HTML documentation.
1039# Note that a value of 0 will completely suppress the enum values from appearing in the overview section.
1040
1041ENUM_VALUES_PER_LINE = 1
1042
1043# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
1044# structure should be generated to display hierarchical information.
1045# If the tag value is set to YES, a side panel will be generated
1046# containing a tree-like index structure (just like the one that
1047# is generated for HTML Help). For this to work a browser that supports
1048# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
1049# Windows users are probably better off using the HTML help feature.
1050
1051GENERATE_TREEVIEW = NO
1052
1053# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
1054# used to set the initial width (in pixels) of the frame in which the tree
1055# is shown.
1056
1057TREEVIEW_WIDTH = 250
1058
1059# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open
1060# links to external symbols imported via tag files in a separate window.
1061
1062EXT_LINKS_IN_WINDOW = NO
1063
1064# Use this tag to change the font size of Latex formulas included
1065# as images in the HTML documentation. The default is 10. Note that
1066# when you change the font size after a successful doxygen run you need
1067# to manually remove any form_*.png images from the HTML output directory
1068# to force them to be regenerated.
1069
1070FORMULA_FONTSIZE = 10
1071
1072# Use the FORMULA_TRANPARENT tag to determine whether or not the images
1073# generated for formulas are transparent PNGs. Transparent PNGs are
1074# not supported properly for IE 6.0, but are supported on all modern browsers.
1075# Note that when changing this option you need to delete any form_*.png files
1076# in the HTML output before the changes have effect.
1077
1078FORMULA_TRANSPARENT = YES
1079
1080# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax
1081# (see http://www.mathjax.org) which uses client side Javascript for the
1082# rendering instead of using prerendered bitmaps. Use this if you do not
1083# have LaTeX installed or if you want to formulas look prettier in the HTML
1084# output. When enabled you also need to install MathJax separately and
1085# configure the path to it using the MATHJAX_RELPATH option.
1086
1087USE_MATHJAX = NO
1088
1089# When MathJax is enabled you need to specify the location relative to the
1090# HTML output directory using the MATHJAX_RELPATH option. The destination
1091# directory should contain the MathJax.js script. For instance, if the mathjax
1092# directory is located at the same level as the HTML output directory, then
1093# MATHJAX_RELPATH should be ../mathjax. The default value points to the mathjax.org site, so you can quickly see the result without installing
1094# MathJax, but it is strongly recommended to install a local copy of MathJax
1095# before deployment.
1096
1097MATHJAX_RELPATH = http://www.mathjax.org/mathjax
1098
1099# When the SEARCHENGINE tag is enabled doxygen will generate a search box
1100# for the HTML output. The underlying search engine uses javascript
1101# and DHTML and should work on any modern browser. Note that when using
1102# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
1103# (GENERATE_DOCSET) there is already a search function so this one should
1104# typically be disabled. For large projects the javascript based search engine
1105# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
1106
1107SEARCHENGINE = NO
1108
1109# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
1110# implemented using a PHP enabled web server instead of at the web client
1111# using Javascript. Doxygen will generate the search PHP script and index
1112# file to put on the web server. The advantage of the server
1113# based approach is that it scales better to large projects and allows
1114# full text search. The disadvantages are that it is more difficult to setup
1115# and does not have live searching capabilities.
1116
1117SERVER_BASED_SEARCH = NO
1118
1119#---------------------------------------------------------------------------
1120# configuration options related to the LaTeX output
1121#---------------------------------------------------------------------------
1122
1123# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
1124# generate Latex output.
1125
1126GENERATE_LATEX = YES
1127
1128# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
1129# If a relative path is entered the value of OUTPUT_DIRECTORY will be
1130# put in front of it. If left blank `latex' will be used as the default path.
1131
1132LATEX_OUTPUT = latex
1133
1134# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
1135# invoked. If left blank `latex' will be used as the default command name.
1136# Note that when enabling USE_PDFLATEX this option is only used for
1137# generating bitmaps for formulas in the HTML output, but not in the
1138# Makefile that is written to the output directory.
1139
1140LATEX_CMD_NAME = latex
1141
1142# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
1143# generate index for LaTeX. If left blank `makeindex' will be used as the
1144# default command name.
1145
1146MAKEINDEX_CMD_NAME = makeindex
1147
1148# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
1149# LaTeX documents. This may be useful for small projects and may help to
1150# save some trees in general.
1151
1152COMPACT_LATEX = NO
1153
1154# The PAPER_TYPE tag can be used to set the paper type that is used
1155# by the printer. Possible values are: a4, letter, legal and
1156# executive. If left blank a4wide will be used.
1157
1158PAPER_TYPE = a4wide
1159
1160# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
1161# packages that should be included in the LaTeX output.
1162
1163EXTRA_PACKAGES =
1164
1165# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
1166# the generated latex document. The header should contain everything until
1167# the first chapter. If it is left blank doxygen will generate a
1168# standard header. Notice: only use this tag if you know what you are doing!
1169
1170LATEX_HEADER =
1171
1172# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
1173# is prepared for conversion to pdf (using ps2pdf). The pdf file will
1174# contain links (just like the HTML output) instead of page references
1175# This makes the output suitable for online browsing using a pdf viewer.
1176
1177PDF_HYPERLINKS = YES
1178
1179# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
1180# plain latex in the generated Makefile. Set this option to YES to get a
1181# higher quality PDF documentation.
1182
1183USE_PDFLATEX = YES
1184
1185# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
1186# command to the generated LaTeX files. This will instruct LaTeX to keep
1187# running if errors occur, instead of asking the user for help.
1188# This option is also used when generating formulas in HTML.
1189
1190LATEX_BATCHMODE = NO
1191
1192# If LATEX_HIDE_INDICES is set to YES then doxygen will not
1193# include the index chapters (such as File Index, Compound Index, etc.)
1194# in the output.
1195
1196LATEX_HIDE_INDICES = NO
1197
1198# If LATEX_SOURCE_CODE is set to YES then doxygen will include
1199# source code with syntax highlighting in the LaTeX output.
1200# Note that which sources are shown also depends on other settings
1201# such as SOURCE_BROWSER.
1202
1203LATEX_SOURCE_CODE = NO
1204
1205#---------------------------------------------------------------------------
1206# configuration options related to the RTF output
1207#---------------------------------------------------------------------------
1208
1209# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
1210# The RTF output is optimized for Word 97 and may not look very pretty with
1211# other RTF readers or editors.
1212
1213GENERATE_RTF = NO
1214
1215# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
1216# If a relative path is entered the value of OUTPUT_DIRECTORY will be
1217# put in front of it. If left blank `rtf' will be used as the default path.
1218
1219RTF_OUTPUT = rtf
1220
1221# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
1222# RTF documents. This may be useful for small projects and may help to
1223# save some trees in general.
1224
1225COMPACT_RTF = NO
1226
1227# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
1228# will contain hyperlink fields. The RTF file will
1229# contain links (just like the HTML output) instead of page references.
1230# This makes the output suitable for online browsing using WORD or other
1231# programs which support those fields.
1232# Note: wordpad (write) and others do not support links.
1233
1234RTF_HYPERLINKS = NO
1235
1236# Load stylesheet definitions from file. Syntax is similar to doxygen's
1237# config file, i.e. a series of assignments. You only have to provide
1238# replacements, missing definitions are set to their default value.
1239
1240RTF_STYLESHEET_FILE =
1241
1242# Set optional variables used in the generation of an rtf document.
1243# Syntax is similar to doxygen's config file.
1244
1245RTF_EXTENSIONS_FILE =
1246
1247#---------------------------------------------------------------------------
1248# configuration options related to the man page output
1249#---------------------------------------------------------------------------
1250
1251# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
1252# generate man pages
1253
1254GENERATE_MAN = YES
1255
1256# The MAN_OUTPUT tag is used to specify where the man pages will be put.
1257# If a relative path is entered the value of OUTPUT_DIRECTORY will be
1258# put in front of it. If left blank `man' will be used as the default path.
1259
1260MAN_OUTPUT = man
1261
1262# The MAN_EXTENSION tag determines the extension that is added to
1263# the generated man pages (default is the subroutine's section .3)
1264
1265MAN_EXTENSION = .3
1266
1267# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
1268# then it will generate one additional man file for each entity
1269# documented in the real man page(s). These additional files
1270# only source the real man page, but without them the man command
1271# would be unable to find the correct page. The default is NO.
1272
1273MAN_LINKS = YES
1274
1275#---------------------------------------------------------------------------
1276# configuration options related to the XML output
1277#---------------------------------------------------------------------------
1278
1279# If the GENERATE_XML tag is set to YES Doxygen will
1280# generate an XML file that captures the structure of
1281# the code including all documentation.
1282
1283GENERATE_XML = NO
1284
1285# The XML_OUTPUT tag is used to specify where the XML pages will be put.
1286# If a relative path is entered the value of OUTPUT_DIRECTORY will be
1287# put in front of it. If left blank `xml' will be used as the default path.
1288
1289XML_OUTPUT = xml
1290
1291# The XML_SCHEMA tag can be used to specify an XML schema,
1292# which can be used by a validating XML parser to check the
1293# syntax of the XML files.
1294
1295XML_SCHEMA =
1296
1297# The XML_DTD tag can be used to specify an XML DTD,
1298# which can be used by a validating XML parser to check the
1299# syntax of the XML files.
1300
1301XML_DTD =
1302
1303# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
1304# dump the program listings (including syntax highlighting
1305# and cross-referencing information) to the XML output. Note that
1306# enabling this will significantly increase the size of the XML output.
1307
1308XML_PROGRAMLISTING = YES
1309
1310#---------------------------------------------------------------------------
1311# configuration options for the AutoGen Definitions output
1312#---------------------------------------------------------------------------
1313
1314# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
1315# generate an AutoGen Definitions (see autogen.sf.net) file
1316# that captures the structure of the code including all
1317# documentation. Note that this feature is still experimental
1318# and incomplete at the moment.
1319
1320GENERATE_AUTOGEN_DEF = NO
1321
1322#---------------------------------------------------------------------------
1323# configuration options related to the Perl module output
1324#---------------------------------------------------------------------------
1325
1326# If the GENERATE_PERLMOD tag is set to YES Doxygen will
1327# generate a Perl module file that captures the structure of
1328# the code including all documentation. Note that this
1329# feature is still experimental and incomplete at the
1330# moment.
1331
1332GENERATE_PERLMOD = NO
1333
1334# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
1335# the necessary Makefile rules, Perl scripts and LaTeX code to be able
1336# to generate PDF and DVI output from the Perl module output.
1337
1338PERLMOD_LATEX = NO
1339
1340# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
1341# nicely formatted so it can be parsed by a human reader.
1342# This is useful
1343# if you want to understand what is going on.
1344# On the other hand, if this
1345# tag is set to NO the size of the Perl module output will be much smaller
1346# and Perl will parse it just the same.
1347
1348PERLMOD_PRETTY = YES
1349
1350# The names of the make variables in the generated doxyrules.make file
1351# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
1352# This is useful so different doxyrules.make files included by the same
1353# Makefile don't overwrite each other's variables.
1354
1355PERLMOD_MAKEVAR_PREFIX =
1356
1357#---------------------------------------------------------------------------
1358# Configuration options related to the preprocessor
1359#---------------------------------------------------------------------------
1360
1361# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
1362# evaluate all C-preprocessor directives found in the sources and include
1363# files.
1364
1365ENABLE_PREPROCESSING = YES
1366
1367# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
1368# names in the source code. If set to NO (the default) only conditional
1369# compilation will be performed. Macro expansion can be done in a controlled
1370# way by setting EXPAND_ONLY_PREDEF to YES.
1371
1372MACRO_EXPANSION = YES
1373
1374# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
1375# then the macro expansion is limited to the macros specified with the
1376# PREDEFINED and EXPAND_AS_DEFINED tags.