<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'> <head> <title>tk.git - Tk is a free and open-source, cross-platform widget toolkit that provides a library of basic elements of GUI widgets for building a graphical user interface (GUI) in many programming languages.</title> <meta name='generator' content='cgit v0.12'/> <meta name='robots' content='index, nofollow'/> <link rel='stylesheet' type='text/css' href='/cgit-data/cgit-techsat.css'/> <link rel='shortcut icon' href='/favicon.ico'/> <link rel='alternate' title='Atom feed' href='http://service.techsat.com/oss-git/tk.git/atom/tests/window.test?h=contrib_patrick_fradin_code_cleanup' type='application/atom+xml'/> </head> <body> <div id='cgit'><table id='header'> <tr> <td class='logo' rowspan='2'><a href='/oss-git/'><img src='/cgit-data/cgit.png' alt='cgit logo'/></a></td> <td class='main'><a href='/oss-git/'>index</a> : <a title='tk.git' href='/oss-git/tk.git/'>tk.git</a></td><td class='form'><form method='get' action=''> <select name='h' onchange='this.form.submit();'> <option value='adc028c8d0'>adc028c8d0</option> <option value='ajuba_ajuba2_2_1_base_synthetic'>ajuba_ajuba2_2_1_base_synthetic</option> <option value='androwish'>androwish</option> <option value='apn_win_filedialogs'>apn_win_filedialogs</option> <option value='bindScriptCount'>bindScriptCount</option> <option value='bug_011706ec42'>bug_011706ec42</option> <option value='bug_011706ec42_without_busy_wait'>bug_011706ec42_without_busy_wait</option> <option value='bug_069c9e43c4'>bug_069c9e43c4</option> <option value='bug_06c1433906'>bug_06c1433906</option> <option value='bug_1080198fff'>bug_1080198fff</option> <option value='bug_1082213fff'>bug_1082213fff</option> <option value='bug_1096580fff'>bug_1096580fff</option> <option value='bug_109865fa01'>bug_109865fa01</option> <option value='bug_1192095'>bug_1192095</option> <option value='bug_1217222'>bug_1217222</option> <option value='bug_1247115fff'>bug_1247115fff</option> <option value='bug_1288433fff'>bug_1288433fff</option> <option value='bug_1292219'>bug_1292219</option> <option value='bug_1292219fff'>bug_1292219fff</option> <option value='bug_1305128fff'>bug_1305128fff</option> <option value='bug_1414025'>bug_1414025</option> <option value='bug_1501749fff'>bug_1501749fff</option> <option value='bug_1510538fff'>bug_1510538fff</option> <option value='bug_1520118fff'>bug_1520118fff</option> <option value='bug_1581435fff'>bug_1581435fff</option> <option value='bug_1581955fff'>bug_1581955fff</option> <option value='bug_1630251'>bug_1630251</option> <option value='bug_1630254'>bug_1630254</option> <option value='bug_1630262'>bug_1630262</option> <option value='bug_1630271'>bug_1630271</option> <option value='bug_1669632fff'>bug_1669632fff</option> <option value='bug_1700065fff'>bug_1700065fff</option> <option value='bug_1714535fff'>bug_1714535fff</option> <option value='bug_1739605fff'>bug_1739605fff</option> <option value='bug_18c08df753'>bug_18c08df753</option> <option value='bug_1913750'>bug_1913750</option> <option value='bug_1927212fff'>bug_1927212fff</option> <option value='bug_1997299fff'>bug_1997299fff</option> <option value='bug_1e0db2400c'>bug_1e0db2400c</option> <option value='bug_2049429fff'>bug_2049429fff</option> <option value='bug_2160206fff'>bug_2160206fff</option> <option value='bug_220854fff'>bug_220854fff</option> <option value='bug_2262543fff'>bug_2262543fff</option> <option value='bug_2262711fff'>bug_2262711fff</option> <option value='bug_22ace0d494'>bug_22ace0d494</option> <option value='bug_2368195fff'>bug_2368195fff</option> <option value='bug_2433781'>bug_2433781</option> <option value='bug_2443069'>bug_2443069</option> <option value='bug_2546087'>bug_2546087</option> <option value='bug_280089486e'>bug_280089486e</option> <option value='bug_280089486e_bis'>bug_280089486e_bis</option> <option value='bug_2874226'>bug_2874226</option> <option value='bug_2886436fff_option1'>bug_2886436fff_option1</option> <option value='bug_2886436fff_option2'>bug_2886436fff_option2</option> <option value='bug_28a3c366e6'>bug_28a3c366e6</option> <option value='bug_28a4535fa2'>bug_28a4535fa2</option> <option value='bug_28d0b8fb2f'>bug_28d0b8fb2f</option> <option value='bug_2912962fff'>bug_2912962fff</option> <option value='bug_2945130fff'>bug_2945130fff</option> <option value='bug_2945130fff_shift'>bug_2945130fff_shift</option> <option value='bug_297442da29'>bug_297442da29</option> <option value='bug_2981253fff'>bug_2981253fff</option> <option value='bug_2a70627a03'>bug_2a70627a03</option> <option value='bug_2cf3d6942c'>bug_2cf3d6942c</option> <option value='bug_2cf3d6942c_mistake'>bug_2cf3d6942c_mistake</option> <option value='bug_2f78c7c5ea'>bug_2f78c7c5ea</option> <option value='bug_3021557'>bug_3021557</option> <option value='bug_3062331'>bug_3062331</option> <option value='bug_308940fff'>bug_308940fff</option> <option value='bug_3102228fff'>bug_3102228fff</option> <option value='bug_3137232fff'>bug_3137232fff</option> <option value='bug_3216070'>bug_3216070</option> <option value='bug_3217462'>bug_3217462</option> <option value='bug_3295446'>bug_3295446</option> <option value='bug_3404541'>bug_3404541</option> <option value='bug_3406785'>bug_3406785</option> <option value='bug_3410609'>bug_3410609</option> <option value='bug_3417012fff'>bug_3417012fff</option> <option value='bug_3475627'>bug_3475627</option> <option value='bug_3486474'>bug_3486474</option> <option value='bug_3508771'>bug_3508771</option> <option value='bug_3511806'>bug_3511806</option> <option value='bug_3512539fff'>bug_3512539fff</option> <option value='bug_3512824'>bug_3512824</option> <option value='bug_3529885fff'>bug_3529885fff</option> <option value='bug_3545457'>bug_3545457</option> <option value='bug_3554052fff'>bug_3554052fff</option> <option value='bug_3554273'>bug_3554273</option> <option value='bug_3555644'>bug_3555644</option> <option value='bug_3566106'>bug_3566106</option> <option value='bug_3567779'>bug_3567779</option> <option value='bug_3567786'>bug_3567786</option> <option value='bug_3582795'>bug_3582795</option> <option value='bug_3585396'>bug_3585396</option> <option value='bug_3588460fff'>bug_3588460fff</option> <option value='bug_3588824'>bug_3588824</option> <option value='bug_3592454fff'>bug_3592454fff</option> <option value='bug_3592736'>bug_3592736</option> <option value='bug_3599312'>bug_3599312</option> <option value='bug_3600390'>bug_3600390</option> <option value='bug_3601604fff'>bug_3601604fff</option> <option value='bug_3602901fff'>bug_3602901fff</option> <option value='bug_3604346'>bug_3604346</option> <option value='bug_3607248'>bug_3607248</option> <option value='bug_3607250'>bug_3607250</option> <option value='bug_3607830'>bug_3607830</option> <option value='bug_3608074'>bug_3608074</option> <option value='bug_3613668'>bug_3613668</option> <option value='bug_3613759'>bug_3613759</option> <option value='bug_382da038c9'>bug_382da038c9</option> <option value='bug_38dc27bd1d0ecd68'>bug_38dc27bd1d0ecd68</option> <option value='bug_3df559ef7c'>bug_3df559ef7c</option> <option value='bug_3e3e25f483'>bug_3e3e25f483</option> <option value='bug_3ee76e41c2'>bug_3ee76e41c2</option> <option value='bug_3f1f79abcf'>bug_3f1f79abcf</option> <option value='bug_3f323bf2b4'>bug_3f323bf2b4</option> <option value='bug_434d294df'>bug_434d294df</option> <option value='bug_450bb0ecad'>bug_450bb0ecad</option> <option value='bug_453518fff'>bug_453518fff</option> <option value='bug_487861ffff'>bug_487861ffff</option> <option value='bug_4955f5d8a4'>bug_4955f5d8a4</option> <option value='bug_4966cad4d4'>bug_4966cad4d4</option> <option value='bug_4cb3dab4eb'>bug_4cb3dab4eb</option> <option value='bug_514ff64dd0'>bug_514ff64dd0</option> <option value='bug_5239fd749b'>bug_5239fd749b</option> <option value='bug_533519'>bug_533519</option> <option value='bug_533519_alt'>bug_533519_alt</option> <option value='bug_542199fff'>bug_542199fff</option> <option value='bug_545f10fcf3'>bug_545f10fcf3</option> <option value='bug_55b95f578a'>bug_55b95f578a</option> <option value='bug_562118ce41'>bug_562118ce41</option> <option value='bug_5660d11c3f'>bug_5660d11c3f</option> <option value='bug_62c5b7a1d7'>bug_62c5b7a1d7</option> <option value='bug_62f1343ad2'>bug_62f1343ad2</option> <option value='bug_6976e4b3b2'>bug_6976e4b3b2</option> <option value='bug_6aea69fccb'>bug_6aea69fccb</option> <option value='bug_720879afe9'>bug_720879afe9</option> <option value='bug_720879afe9_alt'>bug_720879afe9_alt</option> <option value='bug_73ba07efcd'>bug_73ba07efcd</option> <option value='bug_7703f947aa'>bug_7703f947aa</option> <option value='bug_77527326e5'>bug_77527326e5</option> <option value='bug_793909fff'>bug_793909fff</option> <option value='bug_79549a9134'>bug_79549a9134</option> <option value='bug_7a838c38a1'>bug_7a838c38a1</option> <option value='bug_7c7e8f957e'>bug_7c7e8f957e</option> <option value='bug_7d967c68'>bug_7d967c68</option> <option value='bug_810c43d789'>bug_810c43d789</option> <option value='bug_8277e1a906'>bug_8277e1a906</option> <option value='bug_841280ffff'>bug_841280ffff</option> <option value='bug_857686bb3d'>bug_857686bb3d</option> <option value='bug_89a638af38'>bug_89a638af38</option> <option value='bug_8c4216dca9'>bug_8c4216dca9</option> <option value='bug_92e028b41b'>bug_92e028b41b</option> <option value='bug_960391ffff'>bug_960391ffff</option> <option value='bug_99b84e49ff_8_5'>bug_99b84e49ff_8_5</option> <option value='bug_99b84e49ff_trunk'>bug_99b84e49ff_trunk</option> <option value='bug_9e487e9f15'>bug_9e487e9f15</option> <option value='bug_9fcc519a7c'>bug_9fcc519a7c</option> <option value='bug_a2abc45ee6'>bug_a2abc45ee6</option> <option value='bug_a5ba1c9764'>bug_a5ba1c9764</option> <option value='bug_adc028c8d0'>bug_adc028c8d0</option> <option value='bug_ae32eb7e10'>bug_ae32eb7e10</option> <option value='bug_b362182e45'>bug_b362182e45</option> <option value='bug_b601ce3ab1'>bug_b601ce3ab1</option> <option value='bug_bb6b4032d2'>bug_bb6b4032d2</option> <option value='bug_bc43fd20cf'>bug_bc43fd20cf</option> <option value='bug_c0dbdd3ff3'>bug_c0dbdd3ff3</option> <option value='bug_c12af74765'>bug_c12af74765</option> <option value='bug_c199ef90a6'>bug_c199ef90a6</option> <option value='bug_c24b97d905'>bug_c24b97d905</option> <option value='bug_c492c96aa2'>bug_c492c96aa2</option> <option value='bug_c95d4691ff'>bug_c95d4691ff</option> <option value='bug_c95d4691ff_mistake'>bug_c95d4691ff_mistake</option> <option value='bug_cbab0f88d7'>bug_cbab0f88d7</option> <option value='bug_d0c55bd78a'>bug_d0c55bd78a</option> <option value='bug_d4fb4e80d2'>bug_d4fb4e80d2</option> <option value='bug_d4fb4e80d2_alt'>bug_d4fb4e80d2_alt</option> <option value='bug_d6b95ce4'>bug_d6b95ce4</option> <option value='bug_d6b95ce492_alt'>bug_d6b95ce492_alt</option> <option value='bug_d6fd19e4e5'>bug_d6fd19e4e5</option> <option value='bug_d7bad57c43'>bug_d7bad57c43</option> <option value='bug_d95e5d8f16'>bug_d95e5d8f16</option> <option value='bug_d9fdfa435d'>bug_d9fdfa435d</option> <option value='bug_dac92f194c'>bug_dac92f194c</option> <option value='bug_dd9667635d'>bug_dd9667635d</option> <option value='bug_de156e9efe'>bug_de156e9efe</option> <option value='bug_e36963bfe8'>bug_e36963bfe8</option> <option value='bug_e4336bef5d'>bug_e4336bef5d</option> <option value='bug_e4ed00a954'>bug_e4ed00a954</option> <option value='bug_e8a111970a'>bug_e8a111970a</option> <option value='bug_e9112ef96e'>bug_e9112ef96e</option> <option value='bug_eb26817783'>bug_eb26817783</option> <option value='bug_ed22529c92'>bug_ed22529c92</option> <option value='bug_ee40fd1fce'>bug_ee40fd1fce</option> <option value='bug_f0188aca9e'>bug_f0188aca9e</option> <option value='bug_f1a3ca09d2'>bug_f1a3ca09d2</option> <option value='bug_f214b8'>bug_f214b8</option> <option value='bug_f214b8ad5b'>bug_f214b8ad5b</option> <option value='bug_f2655bb0ec'>bug_f2655bb0ec</option> <option value='bug_f60c54bec6'>bug_f60c54bec6</option> <option value='bug_fa32290898'>bug_fa32290898</option> <option value='bug_fab5fed65e'>bug_fab5fed65e</option> <option value='bug_fd3a4dc111'>bug_fd3a4dc111</option> <option value='bug_ff8a1e55a2'>bug_ff8a1e55a2</option> <option value='cocoa_full_merge_review_8_5'>cocoa_full_merge_review_8_5</option> <option value='contrib_patrick_fradin_code_cleanup' selected='selected'>contrib_patrick_fradin_code_cleanup</option> <option value='core_8_0_2_synthetic'>core_8_0_2_synthetic</option> <option value='core_8_0_5_branch'>core_8_0_5_branch</option> <option value='core_8_0_6_branch'>core_8_0_6_branch</option> <option value='core_8_1_0_branch'>core_8_1_0_branch</option> <option value='core_8_1_0_synthetic'>core_8_1_0_synthetic</option> <option value='core_8_1_a2_synthetic'>core_8_1_a2_synthetic</option> <option value='core_8_1_b1_synthetic'>core_8_1_b1_synthetic</option> <option value='core_8_1_b2_synthetic'>core_8_1_b2_synthetic</option> <option value='core_8_1_b3_synthetic'>core_8_1_b3_synthetic</option> <option value='core_8_1_branch_old'>core_8_1_branch_old</option> <option value='core_8_2_1_branch'>core_8_2_1_branch</option> <option value='core_8_2_b3_branch'>core_8_2_b3_branch</option> <option value='core_8_3_1_branch'>core_8_3_1_branch</option> <option value='core_8_4_20_rc'>core_8_4_20_rc</option> <option value='core_8_4_9_branch'>core_8_4_9_branch</option> <option value='core_8_4_branch'>core_8_4_branch</option> <option value='core_8_4_win_speedup'>core_8_4_win_speedup</option> <option value='core_8_5_10_rc'>core_8_5_10_rc</option> <option value='core_8_5_11_rc'>core_8_5_11_rc</option> <option value='core_8_5_12_rc'>core_8_5_12_rc</option> <option value='core_8_5_13_rc'>core_8_5_13_rc</option> <option value='core_8_5_14rc'>core_8_5_14rc</option> <option value='core_8_5_15_rc'>core_8_5_15_rc</option> <option value='core_8_5_16_rc'>core_8_5_16_rc</option> <option value='core_8_5_17_rc'>core_8_5_17_rc</option> <option value='core_8_5_18_rc'>core_8_5_18_rc</option> <option value='core_8_5_19_rc'>core_8_5_19_rc</option> <option value='core_8_5_a5_synthetic'>core_8_5_a5_synthetic</option> <option value='core_8_5_branch'>core_8_5_branch</option> <option value='core_8_6_0_rc'>core_8_6_0_rc</option> <option value='core_8_6_1_rc'>core_8_6_1_rc</option> <option value='core_8_6_2_rc'>core_8_6_2_rc</option> <option value='core_8_6_3_rc'>core_8_6_3_rc</option> <option value='core_8_6_4_rc'>core_8_6_4_rc</option> <option value='core_8_6_5_rc'>core_8_6_5_rc</option> <option value='core_8_6_6_rc'>core_8_6_6_rc</option> <option value='core_8_6_7_rc'>core_8_6_7_rc</option> <option value='core_8_6_b2_rc'>core_8_6_b2_rc</option> <option value='core_8_6_b3_rc'>core_8_6_b3_rc</option> <option value='core_8_6_branch'>core_8_6_branch</option> <option value='core_8_7_a1_rc'>core_8_7_a1_rc</option> <option value='core_stabilizer_branch'>core_stabilizer_branch</option> <option value='core_stabilizer_merge_synthetic'>core_stabilizer_merge_synthetic</option> <option value='core_zip_vfs'>core_zip_vfs</option> <option value='dev_8_1_stubs_branch'>dev_8_1_stubs_branch</option> <option value='dev_stubs_branch'>dev_stubs_branch</option> <option value='dgp_Tcl_requirement'>dgp_Tcl_requirement</option> <option value='dgp_backportcocoaforget'>dgp_backportcocoaforget</option> <option value='dgp_modernize_init'>dgp_modernize_init</option> <option value='dgp_privates_into_namespace'>dgp_privates_into_namespace</option> <option value='dgp_review'>dgp_review</option> <option value='dgp_support_tcl_8_6_build'>dgp_support_tcl_8_6_build</option> <option value='editorconfig'>editorconfig</option> <option value='finddline'>finddline</option> <option value='frq_3536507'>frq_3536507</option> <option value='frq_3555324'>frq_3555324</option> <option value='hitheme'>hitheme</option> <option value='initsubsystems2'>initsubsystems2</option> <option value='irontcl'>irontcl</option> <option value='jn_cocoa_full_merge_8_5'>jn_cocoa_full_merge_8_5</option> <option value='jn_web_colors'>jn_web_colors</option> <option value='little'>little</option> <option value='macosx_8_4_branch'>macosx_8_4_branch</option> <option value='macosx_button_segfault'>macosx_button_segfault</option> <option value='master'>master</option> <option value='mistachkin_dev_branch'>mistachkin_dev_branch</option> <option value='mistake'>mistake</option> <option value='mistake__off_trunk'>mistake__off_trunk</option> <option value='multiscreens'>multiscreens</option> <option value='multiscreens_exp1'>multiscreens_exp1</option> <option value='new_icons'>new_icons</option> <option value='novem_support'>novem_support</option> <option value='novem_support_85'>novem_support_85</option> <option value='option_readfile'>option_readfile</option> <option value='patch_3471873'>patch_3471873</option> <option value='patch_3479498'>patch_3479498</option> <option value='pspjuth_canvas'>pspjuth_canvas</option> <option value='pspjuth_touch'>pspjuth_touch</option> <option value='revised_text'>revised_text</option> <option value='revised_text_ober'>revised_text_ober</option> <option value='rfe_22ace0d494'>rfe_22ace0d494</option> <option value='rfe_2636558'>rfe_2636558</option> <option value='rfe_2863003fff'>rfe_2863003fff</option> <option value='rfe_3503317'>rfe_3503317</option> <option value='rfe_38dc27bd'>rfe_38dc27bd</option> <option value='rfe_3f456a5bb9'>rfe_3f456a5bb9</option> <option value='rfe_499526180d'>rfe_499526180d</option> <option value='rfe_6c0d7aec67'>rfe_6c0d7aec67</option> <option value='rfe_e9a842a3c5'>rfe_e9a842a3c5</option> <option value='scriptics_sc_1_0_branch'>scriptics_sc_1_0_branch</option> <option value='scriptics_sc_1_1_branch'>scriptics_sc_1_1_branch</option> <option value='scriptics_tclpro_1_3_b2_branch'>scriptics_tclpro_1_3_b2_branch</option> <option value='scrollbar_obj_cmd'>scrollbar_obj_cmd</option> <option value='send_obj_cmd'>send_obj_cmd</option> <option value='tagoptions'>tagoptions</option> <option value='tclpro_1_4_0_synthetic'>tclpro_1_4_0_synthetic</option> <option value='tclpro_1_4_1_synthetic'>tclpro_1_4_1_synthetic</option> <option value='tclpro_1_5_0_synthetic'>tclpro_1_5_0_synthetic</option> <option value='text_elided'>text_elided</option> <option value='tip_166'>tip_166</option> <option value='tip_382'>tip_382</option> <option value='tip_389'>tip_389</option> <option value='tip_415'>tip_415</option> <option value='tip_437'>tip_437</option> <option value='tip_438'>tip_438</option> <option value='tip_438_bettercode'>tip_438_bettercode</option> <option value='tip_438_events'>tip_438_events</option> <option value='tip_441'>tip_441</option> <option value='tip_442'>tip_442</option> <option value='tip_443'>tip_443</option> <option value='tip_446'>tip_446</option> <option value='tip_446_canundo'>tip_446_canundo</option> <option value='tip_446_experimental'>tip_446_experimental</option> <option value='tip_446_undodepth'>tip_446_undodepth</option> <option value='tip_449'>tip_449</option> <option value='tip_454'>tip_454</option> <option value='tip_464'>tip_464</option> <option value='tk_cocoa_8_5_backport'>tk_cocoa_8_5_backport</option> <option value='tk_errorcodes'>tk_errorcodes</option> <option value='tk_stu_pkg'>tk_stu_pkg</option> <option value='tobetested'>tobetested</option> <option value='ttk_range_widget'>ttk_range_widget</option> <option value='vc_reform'>vc_reform</option> <option value='win32_arm'>win32_arm</option> <option value='winFixes'>winFixes</option> <option value='z_modifier'>z_modifier</option> </select> <input type='submit' name='' value='switch'/></form></td></tr> <tr><td class='sub'>Tk is a free and open-source, cross-platform widget toolkit that provides a library of basic elements of GUI widgets for building a graphical user interface (GUI) in many programming languages.</td><td class='sub right'></td></tr></table> <table class='tabs'><tr><td> <a href='/oss-git/tk.git/?h=contrib_patrick_fradin_code_cleanup'>summary</a><a href='/oss-git/tk.git/refs/?h=contrib_patrick_fradin_code_cleanup'>refs</a><a href='/oss-git/tk.git/log/tests/window.test?h=contrib_patrick_fradin_code_cleanup'>log</a><a href='/oss-git/tk.git/tree/tests/window.test?h=contrib_patrick_fradin_code_cleanup'>tree</a><a href='/oss-git/tk.git/commit/tests/window.test?h=contrib_patrick_fradin_code_cleanup'>commit</a><a class='active' href='/oss-git/tk.git/diff/tests/window.test?h=contrib_patrick_fradin_code_cleanup'>diff</a><a href='/oss-git/tk.git/stats/tests/window.test?h=contrib_patrick_fradin_code_cleanup'>stats</a></td><td class='form'><form class='right' method='get' action='/oss-git/tk.git/log/tests/window.test'> <input type='hidden' name='h' value='contrib_patrick_fradin_code_cleanup'/><select name='qt'> <option value='grep'>log msg</option> <option value='author'>author</option> <option value='committer'>committer</option> <option value='range'>range</option> </select> <input class='txt' type='text' size='10' name='q' value=''/> <input type='submit' value='search'/> </form> </td></tr></table> <div class='path'>path: <a href='/oss-git/tk.git/diff/?h=contrib_patrick_fradin_code_cleanup'>root</a>/<a href='/oss-git/tk.git/diff/tests?h=contrib_patrick_fradin_code_cleanup'>tests</a>/<a href='/oss-git/tk.git/diff/tests/window.test?h=contrib_patrick_fradin_code_cleanup'>window.test</a></div><div class='content'><div class='cgit-panel'><b>diff options</b><form method='get' action='.'><input type='hidden' name='h' value='contrib_patrick_fradin_code_cleanup'/><table><tr><td colspan='2'/></tr><tr><td class='label'>context:</td><td class='ctrl'><select name='context' onchange='this.form.submit();'><option value='1'>1</option><option value='2'>2</option><option value='3' selected='selected'>3</option><option value='4'>4</option><option value='5'>5</option><option value='6'>6</option><option value='7'>7</option><option value='8'>8</option><option value='9'>9</option><option value='10'>10</option><option value='15'>15</option><option value='20'>20</option><option value='25'>25</option><option value='30'>30</option><option value='35'>35</option><option value='40'>40</option></select></td></tr><tr><td class='label'>space:</td><td class='ctrl'><select name='ignorews' onchange='this.form.submit();'><option value='0' selected='selected'>include</option><option value='1'>ignore</option></select></td></tr><tr><td class='label'>mode:</td><td class='ctrl'><select name='dt' onchange='this.form.submit();'><option value='0' selected='selected'>unified</option><option value='1'>ssdiff</option><option value='2'>stat only</option></select></td></tr><tr><td/><td class='ctrl'><noscript><input type='submit' value='reload'/></noscript></td></tr></table></form></div><div class='diffstat-header'><a href='/oss-git/tk.git/diff/?h=contrib_patrick_fradin_code_cleanup'>Diffstat</a> (limited to 'tests/window.test')</div><table summary='diffstat' class='diffstat'><tr><td class='mode'>-rw-r--r--</td><td class='upd'><a href='/oss-git/tk.git/diff/tests/window.test?h=contrib_patrick_fradin_code_cleanup'>tests/window.test</a></td><td class='right'>25</td><td class='graph'><table summary='file diffstat' width='25%'><tr><td class='add' style='width: 44.0%;'/><td class='rem' style='width: 56.0%;'/><td class='none' style='width: 0.0%;'/></tr></table></td></tr> </table><div class='diffstat-summary'>1 files changed, 11 insertions, 14 deletions</div><table summary='diff' class='diff'><tr><td><div class='head'>diff --git a/tests/window.test b/tests/window.test<br/>index 876ba81..6adbd2d 100644<br/>--- a/<a href='/oss-git/tk.git/tree/tests/window.test?h=contrib_patrick_fradin_code_cleanup&id=41f5d19540b0b3f053da352e1569c9a4ed019dd5'>tests/window.test</a><br/>+++ b/<a href='/oss-git/tk.git/tree/tests/window.test?h=contrib_patrick_fradin_code_cleanup&id=48c9fcb7281cc6aa076113db874c7ae0e105795d'>tests/window.test</a></div><div class='hunk'>@@ -10,7 +10,7 @@ namespace import ::tcltest::*</div><div class='ctx'> tcltest::configure {*}$argv</div><div class='ctx'> tcltest::loadTestedCommands</div><div class='ctx'> testConstraint unthreaded [expr {</div><div class='del'>- (![info exist tcl_platform(threaded)] || !$tcl_platform(threaded))</div><div class='add'>+ (![info exist tcl_platform(threaded)]) || (!$tcl_platform(threaded))</div><div class='ctx'> }]</div><div class='ctx'> namespace import ::tk::test::loadTkCommand</div><div class='ctx'> update</div><div class='hunk'>@@ -52,9 +52,9 @@ test window-2.1 {Tk_DestroyWindow procedure, destroy handler deletes parent} -se</div><div class='ctx'> } -body {</div><div class='ctx'> toplevel .t -width 300 -height 200</div><div class='ctx'> wm geometry .t +0+0</div><div class='del'>- frame .t.f -width 200 -height 200 -relief raised -bd 2</div><div class='add'>+ frame .t.f -width 200 -height 200 -relief raised -borderwidth 2</div><div class='ctx'> place .t.f -x 0 -y 0</div><div class='del'>- frame .t.f.f -width 100 -height 100 -relief raised -bd 2</div><div class='add'>+ frame .t.f.f -width 100 -height 100 -relief raised -borderwidth 2</div><div class='ctx'> place .t.f.f -relx 1 -rely 1 -anchor se</div><div class='ctx'> bind .t.f <Destroy> {destroy .t}</div><div class='ctx'> update</div><div class='hunk'>@@ -65,9 +65,9 @@ test window-2.2 {Tk_DestroyWindow procedure, destroy handler deletes parent} -se</div><div class='ctx'> } -body {</div><div class='ctx'> toplevel .t -width 300 -height 200</div><div class='ctx'> wm geometry .t +0+0</div><div class='del'>- frame .t.f -width 200 -height 200 -relief raised -bd 2</div><div class='add'>+ frame .t.f -width 200 -height 200 -relief raised -borderwidth 2</div><div class='ctx'> place .t.f -x 0 -y 0</div><div class='del'>- frame .t.f.f -width 100 -height 100 -relief raised -bd 2</div><div class='add'>+ frame .t.f.f -width 100 -height 100 -relief raised -borderwidth 2</div><div class='ctx'> place .t.f.f -relx 1 -rely 1 -anchor se</div><div class='ctx'> bind .t.f.f <Destroy> {destroy .t}</div><div class='ctx'> update</div><div class='hunk'>@@ -76,13 +76,13 @@ test window-2.2 {Tk_DestroyWindow procedure, destroy handler deletes parent} -se</div><div class='ctx'> test window-2.3 {Tk_DestroyWindow procedure, destroy handler deletes parent} -setup {</div><div class='ctx'> destroy .f</div><div class='ctx'> } -body {</div><div class='del'>- frame .f -width 80 -height 120 -relief raised -bd 2</div><div class='add'>+ frame .f -width 80 -height 120 -relief raised -borderwidth 2</div><div class='ctx'> place .f -relx 0.5 -rely 0.5 -anchor center</div><div class='ctx'> toplevel .f.t -width 300 -height 200</div><div class='ctx'> wm geometry .f.t +0+0</div><div class='del'>- frame .f.t.f -width 200 -height 200 -relief raised -bd 2</div><div class='add'>+ frame .f.t.f -width 200 -height 200 -relief raised -borderwidth 2</div><div class='ctx'> place .f.t.f -x 0 -y 0</div><div class='del'>- frame .f.t.f.f -width 100 -height 100 -relief raised -bd 2</div><div class='add'>+ frame .f.t.f.f -width 100 -height 100 -relief raised -borderwidth 2</div><div class='ctx'> place .f.t.f.f -relx 1 -rely 1 -anchor se</div><div class='ctx'> update</div><div class='ctx'> destroy .f</div><div class='hunk'>@@ -267,7 +267,6 @@ test window-2.11 {Tk_DestroyWindow, don't reanimate a half-dead window} -constra</div><div class='ctx'> list $error $msg</div><div class='ctx'> } -result {0 YES}</div><div class='ctx'> </div><div class='del'>-</div><div class='ctx'> test window-3.1 {Tk_MakeWindowExist procedure, stacking order and menubars} -constraints {</div><div class='ctx'> unix testmenubar</div><div class='ctx'> } -setup {</div><div class='hunk'>@@ -276,7 +275,7 @@ test window-3.1 {Tk_MakeWindowExist procedure, stacking order and menubars} -con</div><div class='ctx'> toplevel .t -width 300 -height 200</div><div class='ctx'> wm geometry .t +0+0</div><div class='ctx'> pack [entry .t.e]</div><div class='del'>- frame .t.f -bd 2 -relief raised</div><div class='add'>+ frame .t.f -borderwidth 2 -relief raised</div><div class='ctx'> testmenubar window .t .t.f</div><div class='ctx'> update</div><div class='ctx'> # If stacking order isn't handle properly, generates an X error.</div><div class='hunk'>@@ -293,7 +292,7 @@ test window-3.2 {Tk_MakeWindowExist procedure, stacking order and menubars} -con</div><div class='ctx'> pack [entry .t.e]</div><div class='ctx'> pack [entry .t.e2]</div><div class='ctx'> update</div><div class='del'>- frame .t.f -bd 2 -relief raised</div><div class='add'>+ frame .t.f -borderwidth 2 -relief raised</div><div class='ctx'> raise .t.f .t.e</div><div class='ctx'> testmenubar window .t .t.f</div><div class='ctx'> update</div><div class='hunk'>@@ -302,7 +301,6 @@ test window-3.2 {Tk_MakeWindowExist procedure, stacking order and menubars} -con</div><div class='ctx'> destroy .t</div><div class='ctx'> } -result {}</div><div class='ctx'> </div><div class='del'>-</div><div class='ctx'> test window-4.1 {Tk_NameToWindow procedure} -constraints {</div><div class='ctx'> testmenubar</div><div class='ctx'> } -setup {</div><div class='hunk'>@@ -325,7 +323,6 @@ test window-4.2 {Tk_NameToWindow procedure} -constraints {</div><div class='ctx'> destroy .t</div><div class='ctx'> } -returnCodes ok -result {100x50+10+10}</div><div class='ctx'> </div><div class='del'>-</div><div class='ctx'> test window-5.1 {Tk_MakeWindowExist procedure, stacking order and menubars} -constraints {</div><div class='ctx'> unix testmenubar</div><div class='ctx'> } -setup {</div><div class='hunk'>@@ -335,7 +332,7 @@ test window-5.1 {Tk_MakeWindowExist procedure, stacking order and menubars} -con</div><div class='ctx'> wm geometry .t +0+0</div><div class='ctx'> pack [entry .t.e]</div><div class='ctx'> pack [entry .t.e2]</div><div class='del'>- frame .t.f -bd 2 -relief raised</div><div class='add'>+ frame .t.f -borderwidth 2 -relief raised</div><div class='ctx'> testmenubar window .t .t.f</div><div class='ctx'> update</div><div class='ctx'> lower .t.e2 .t.f</div></td></tr></table></div> <!-- class=content --> <div class='footer'>generated by <a href='http://git.zx2c4.com/cgit/about/'>cgit v0.12</a> at 2025-03-09 05:39:32 (GMT)</div> </div> <!-- id=cgit --> </body> </html> n814' href='#n814'>814</a> <a id='n815' href='#n815'>815</a> <a id='n816' href='#n816'>816</a> <a id='n817' href='#n817'>817</a> <a id='n818' href='#n818'>818</a> <a id='n819' href='#n819'>819</a> <a id='n820' href='#n820'>820</a> <a id='n821' href='#n821'>821</a> <a id='n822' href='#n822'>822</a> <a id='n823' href='#n823'>823</a> <a id='n824' href='#n824'>824</a> <a id='n825' href='#n825'>825</a> <a id='n826' href='#n826'>826</a> <a id='n827' href='#n827'>827</a> <a id='n828' href='#n828'>828</a> <a id='n829' href='#n829'>829</a> <a id='n830' href='#n830'>830</a> <a id='n831' href='#n831'>831</a> <a id='n832' href='#n832'>832</a> <a id='n833' href='#n833'>833</a> <a id='n834' href='#n834'>834</a> <a id='n835' href='#n835'>835</a> <a id='n836' href='#n836'>836</a> <a id='n837' href='#n837'>837</a> <a id='n838' href='#n838'>838</a> <a id='n839' href='#n839'>839</a> <a id='n840' href='#n840'>840</a> <a id='n841' href='#n841'>841</a> <a id='n842' href='#n842'>842</a> <a id='n843' href='#n843'>843</a> <a id='n844' href='#n844'>844</a> <a id='n845' href='#n845'>845</a> <a id='n846' href='#n846'>846</a> <a id='n847' href='#n847'>847</a> <a id='n848' href='#n848'>848</a> <a id='n849' href='#n849'>849</a> <a id='n850' href='#n850'>850</a> <a id='n851' href='#n851'>851</a> <a id='n852' href='#n852'>852</a> <a id='n853' href='#n853'>853</a> <a id='n854' href='#n854'>854</a> <a id='n855' href='#n855'>855</a> <a id='n856' href='#n856'>856</a> <a id='n857' href='#n857'>857</a> <a id='n858' href='#n858'>858</a> <a id='n859' href='#n859'>859</a> <a id='n860' href='#n860'>860</a> <a id='n861' href='#n861'>861</a> <a id='n862' href='#n862'>862</a> <a id='n863' href='#n863'>863</a> <a id='n864' href='#n864'>864</a> <a id='n865' href='#n865'>865</a> <a id='n866' href='#n866'>866</a> <a id='n867' href='#n867'>867</a> <a id='n868' href='#n868'>868</a> <a id='n869' href='#n869'>869</a> <a id='n870' href='#n870'>870</a> <a id='n871' href='#n871'>871</a> <a id='n872' href='#n872'>872</a> <a id='n873' href='#n873'>873</a> <a id='n874' href='#n874'>874</a> <a id='n875' href='#n875'>875</a> <a id='n876' href='#n876'>876</a> <a id='n877' href='#n877'>877</a> <a id='n878' href='#n878'>878</a> <a id='n879' href='#n879'>879</a> <a id='n880' href='#n880'>880</a> <a id='n881' href='#n881'>881</a> <a id='n882' href='#n882'>882</a> <a id='n883' href='#n883'>883</a> <a id='n884' href='#n884'>884</a> <a id='n885' href='#n885'>885</a> <a id='n886' href='#n886'>886</a> <a id='n887' href='#n887'>887</a> <a id='n888' href='#n888'>888</a> <a id='n889' href='#n889'>889</a> <a id='n890' href='#n890'>890</a> <a id='n891' href='#n891'>891</a> <a id='n892' href='#n892'>892</a> <a id='n893' href='#n893'>893</a> <a id='n894' href='#n894'>894</a> <a id='n895' href='#n895'>895</a> <a id='n896' href='#n896'>896</a> <a id='n897' href='#n897'>897</a> <a id='n898' href='#n898'>898</a> <a id='n899' href='#n899'>899</a> <a id='n900' href='#n900'>900</a> <a id='n901' href='#n901'>901</a> <a id='n902' href='#n902'>902</a> <a id='n903' href='#n903'>903</a> <a id='n904' href='#n904'>904</a> <a id='n905' href='#n905'>905</a> <a id='n906' href='#n906'>906</a> <a id='n907' href='#n907'>907</a> <a id='n908' href='#n908'>908</a> <a id='n909' href='#n909'>909</a> <a id='n910' href='#n910'>910</a> <a id='n911' href='#n911'>911</a> <a id='n912' href='#n912'>912</a> <a id='n913' href='#n913'>913</a> <a id='n914' href='#n914'>914</a> <a id='n915' href='#n915'>915</a> <a id='n916' href='#n916'>916</a> <a id='n917' href='#n917'>917</a> <a id='n918' href='#n918'>918</a> <a id='n919' href='#n919'>919</a> <a id='n920' href='#n920'>920</a> <a id='n921' href='#n921'>921</a> <a id='n922' href='#n922'>922</a> <a id='n923' href='#n923'>923</a> <a id='n924' href='#n924'>924</a> <a id='n925' href='#n925'>925</a> <a id='n926' href='#n926'>926</a> <a id='n927' href='#n927'>927</a> <a id='n928' href='#n928'>928</a> <a id='n929' href='#n929'>929</a> <a id='n930' href='#n930'>930</a> <a id='n931' href='#n931'>931</a> <a id='n932' href='#n932'>932</a> <a id='n933' href='#n933'>933</a> <a id='n934' href='#n934'>934</a> <a id='n935' href='#n935'>935</a> <a id='n936' href='#n936'>936</a> <a id='n937' href='#n937'>937</a> <a id='n938' href='#n938'>938</a> <a id='n939' href='#n939'>939</a> <a id='n940' href='#n940'>940</a> <a id='n941' href='#n941'>941</a> <a id='n942' href='#n942'>942</a> <a id='n943' href='#n943'>943</a> <a id='n944' href='#n944'>944</a> <a id='n945' href='#n945'>945</a> <a id='n946' href='#n946'>946</a> <a id='n947' href='#n947'>947</a> <a id='n948' href='#n948'>948</a> <a id='n949' href='#n949'>949</a> <a id='n950' href='#n950'>950</a> <a id='n951' href='#n951'>951</a> <a id='n952' href='#n952'>952</a> <a id='n953' href='#n953'>953</a> <a id='n954' href='#n954'>954</a> <a id='n955' href='#n955'>955</a> <a id='n956' href='#n956'>956</a> <a id='n957' href='#n957'>957</a> <a id='n958' href='#n958'>958</a> <a id='n959' href='#n959'>959</a> <a id='n960' href='#n960'>960</a> <a id='n961' href='#n961'>961</a> <a id='n962' href='#n962'>962</a> <a id='n963' href='#n963'>963</a> <a id='n964' href='#n964'>964</a> <a id='n965' href='#n965'>965</a> <a id='n966' href='#n966'>966</a> <a id='n967' href='#n967'>967</a> <a id='n968' href='#n968'>968</a> <a id='n969' href='#n969'>969</a> <a id='n970' href='#n970'>970</a> <a id='n971' href='#n971'>971</a> <a id='n972' href='#n972'>972</a> <a id='n973' href='#n973'>973</a> <a id='n974' href='#n974'>974</a> <a id='n975' href='#n975'>975</a> <a id='n976' href='#n976'>976</a> <a id='n977' href='#n977'>977</a> <a id='n978' href='#n978'>978</a> <a id='n979' href='#n979'>979</a> <a id='n980' href='#n980'>980</a> <a id='n981' href='#n981'>981</a> <a id='n982' href='#n982'>982</a> <a id='n983' href='#n983'>983</a> <a id='n984' href='#n984'>984</a> <a id='n985' href='#n985'>985</a> <a id='n986' href='#n986'>986</a> <a id='n987' href='#n987'>987</a> <a id='n988' href='#n988'>988</a> <a id='n989' href='#n989'>989</a> <a id='n990' href='#n990'>990</a> <a id='n991' href='#n991'>991</a> <a id='n992' href='#n992'>992</a> <a id='n993' href='#n993'>993</a> <a id='n994' href='#n994'>994</a> <a id='n995' href='#n995'>995</a> <a id='n996' href='#n996'>996</a> <a id='n997' href='#n997'>997</a> <a id='n998' href='#n998'>998</a> <a id='n999' href='#n999'>999</a> <a id='n1000' href='#n1000'>1000</a> <a id='n1001' href='#n1001'>1001</a> <a id='n1002' href='#n1002'>1002</a> <a id='n1003' href='#n1003'>1003</a> <a id='n1004' href='#n1004'>1004</a> <a id='n1005' href='#n1005'>1005</a> <a id='n1006' href='#n1006'>1006</a> <a id='n1007' href='#n1007'>1007</a> <a id='n1008' href='#n1008'>1008</a> <a id='n1009' href='#n1009'>1009</a> <a id='n1010' href='#n1010'>1010</a> <a id='n1011' href='#n1011'>1011</a> <a id='n1012' href='#n1012'>1012</a> <a id='n1013' href='#n1013'>1013</a> <a id='n1014' href='#n1014'>1014</a> <a id='n1015' href='#n1015'>1015</a> <a id='n1016' href='#n1016'>1016</a> <a id='n1017' href='#n1017'>1017</a> <a id='n1018' href='#n1018'>1018</a> <a id='n1019' href='#n1019'>1019</a> <a id='n1020' href='#n1020'>1020</a> <a id='n1021' href='#n1021'>1021</a> <a id='n1022' href='#n1022'>1022</a> <a id='n1023' href='#n1023'>1023</a> <a id='n1024' href='#n1024'>1024</a> <a id='n1025' href='#n1025'>1025</a> <a id='n1026' href='#n1026'>1026</a> <a id='n1027' href='#n1027'>1027</a> <a id='n1028' href='#n1028'>1028</a> <a id='n1029' href='#n1029'>1029</a> <a id='n1030' href='#n1030'>1030</a> <a id='n1031' href='#n1031'>1031</a> <a id='n1032' href='#n1032'>1032</a> <a id='n1033' href='#n1033'>1033</a> <a id='n1034' href='#n1034'>1034</a> <a id='n1035' href='#n1035'>1035</a> <a id='n1036' href='#n1036'>1036</a> <a id='n1037' href='#n1037'>1037</a> <a id='n1038' href='#n1038'>1038</a> <a id='n1039' href='#n1039'>1039</a> <a id='n1040' href='#n1040'>1040</a> <a id='n1041' href='#n1041'>1041</a> <a id='n1042' href='#n1042'>1042</a> <a id='n1043' href='#n1043'>1043</a> <a id='n1044' href='#n1044'>1044</a> <a id='n1045' href='#n1045'>1045</a> <a id='n1046' href='#n1046'>1046</a> <a id='n1047' href='#n1047'>1047</a> <a id='n1048' href='#n1048'>1048</a> <a id='n1049' href='#n1049'>1049</a> <a id='n1050' href='#n1050'>1050</a> <a id='n1051' href='#n1051'>1051</a> <a id='n1052' href='#n1052'>1052</a> <a id='n1053' href='#n1053'>1053</a> <a id='n1054' href='#n1054'>1054</a> <a id='n1055' href='#n1055'>1055</a> <a id='n1056' href='#n1056'>1056</a> <a id='n1057' href='#n1057'>1057</a> <a id='n1058' href='#n1058'>1058</a> <a id='n1059' href='#n1059'>1059</a> <a id='n1060' href='#n1060'>1060</a> <a id='n1061' href='#n1061'>1061</a> <a id='n1062' href='#n1062'>1062</a> <a id='n1063' href='#n1063'>1063</a> <a id='n1064' href='#n1064'>1064</a> <a id='n1065' href='#n1065'>1065</a> <a id='n1066' href='#n1066'>1066</a> <a id='n1067' href='#n1067'>1067</a> <a id='n1068' href='#n1068'>1068</a> <a id='n1069' href='#n1069'>1069</a> <a id='n1070' href='#n1070'>1070</a> <a id='n1071' href='#n1071'>1071</a> <a id='n1072' href='#n1072'>1072</a> <a id='n1073' href='#n1073'>1073</a> <a id='n1074' href='#n1074'>1074</a> <a id='n1075' href='#n1075'>1075</a> <a id='n1076' href='#n1076'>1076</a> <a id='n1077' href='#n1077'>1077</a> <a id='n1078' href='#n1078'>1078</a> <a id='n1079' href='#n1079'>1079</a> <a id='n1080' href='#n1080'>1080</a> <a id='n1081' href='#n1081'>1081</a> <a id='n1082' href='#n1082'>1082</a> <a id='n1083' href='#n1083'>1083</a> <a id='n1084' href='#n1084'>1084</a> <a id='n1085' href='#n1085'>1085</a> <a id='n1086' href='#n1086'>1086</a> <a id='n1087' href='#n1087'>1087</a> <a id='n1088' href='#n1088'>1088</a> <a id='n1089' href='#n1089'>1089</a> <a id='n1090' href='#n1090'>1090</a> <a id='n1091' href='#n1091'>1091</a> <a id='n1092' href='#n1092'>1092</a> <a id='n1093' href='#n1093'>1093</a> <a id='n1094' href='#n1094'>1094</a> <a id='n1095' href='#n1095'>1095</a> <a id='n1096' href='#n1096'>1096</a> <a id='n1097' href='#n1097'>1097</a> <a id='n1098' href='#n1098'>1098</a> <a id='n1099' href='#n1099'>1099</a> <a id='n1100' href='#n1100'>1100</a> <a id='n1101' href='#n1101'>1101</a> <a id='n1102' href='#n1102'>1102</a> <a id='n1103' href='#n1103'>1103</a> <a id='n1104' href='#n1104'>1104</a> <a id='n1105' href='#n1105'>1105</a> <a id='n1106' href='#n1106'>1106</a> <a id='n1107' href='#n1107'>1107</a> <a id='n1108' href='#n1108'>1108</a> <a id='n1109' href='#n1109'>1109</a> <a id='n1110' href='#n1110'>1110</a> <a id='n1111' href='#n1111'>1111</a> <a id='n1112' href='#n1112'>1112</a> <a id='n1113' href='#n1113'>1113</a> <a id='n1114' href='#n1114'>1114</a> <a id='n1115' href='#n1115'>1115</a> <a id='n1116' href='#n1116'>1116</a> <a id='n1117' href='#n1117'>1117</a> <a id='n1118' href='#n1118'>1118</a> <a id='n1119' href='#n1119'>1119</a> <a id='n1120' href='#n1120'>1120</a> <a id='n1121' href='#n1121'>1121</a> <a id='n1122' href='#n1122'>1122</a> <a id='n1123' href='#n1123'>1123</a> <a id='n1124' href='#n1124'>1124</a> <a id='n1125' href='#n1125'>1125</a> <a id='n1126' href='#n1126'>1126</a> <a id='n1127' href='#n1127'>1127</a> <a id='n1128' href='#n1128'>1128</a> <a id='n1129' href='#n1129'>1129</a> <a id='n1130' href='#n1130'>1130</a> <a id='n1131' href='#n1131'>1131</a> <a id='n1132' href='#n1132'>1132</a> <a id='n1133' href='#n1133'>1133</a> <a id='n1134' href='#n1134'>1134</a> <a id='n1135' href='#n1135'>1135</a> <a id='n1136' href='#n1136'>1136</a> <a id='n1137' href='#n1137'>1137</a> <a id='n1138' href='#n1138'>1138</a> <a id='n1139' href='#n1139'>1139</a> <a id='n1140' href='#n1140'>1140</a> <a id='n1141' href='#n1141'>1141</a> <a id='n1142' href='#n1142'>1142</a> <a id='n1143' href='#n1143'>1143</a> <a id='n1144' href='#n1144'>1144</a> <a id='n1145' href='#n1145'>1145</a> <a id='n1146' href='#n1146'>1146</a> <a id='n1147' href='#n1147'>1147</a> <a id='n1148' href='#n1148'>1148</a> <a id='n1149' href='#n1149'>1149</a> <a id='n1150' href='#n1150'>1150</a> <a id='n1151' href='#n1151'>1151</a> <a id='n1152' href='#n1152'>1152</a> <a id='n1153' href='#n1153'>1153</a> <a id='n1154' href='#n1154'>1154</a> <a id='n1155' href='#n1155'>1155</a> <a id='n1156' href='#n1156'>1156</a> <a id='n1157' href='#n1157'>1157</a> <a id='n1158' href='#n1158'>1158</a> <a id='n1159' href='#n1159'>1159</a> <a id='n1160' href='#n1160'>1160</a> <a id='n1161' href='#n1161'>1161</a> <a id='n1162' href='#n1162'>1162</a> <a id='n1163' href='#n1163'>1163</a> <a id='n1164' href='#n1164'>1164</a> <a id='n1165' href='#n1165'>1165</a> <a id='n1166' href='#n1166'>1166</a> <a id='n1167' href='#n1167'>1167</a> <a id='n1168' href='#n1168'>1168</a> <a id='n1169' href='#n1169'>1169</a> <a id='n1170' href='#n1170'>1170</a> <a id='n1171' href='#n1171'>1171</a> <a id='n1172' href='#n1172'>1172</a> <a id='n1173' href='#n1173'>1173</a> <a id='n1174' href='#n1174'>1174</a> <a id='n1175' href='#n1175'>1175</a> <a id='n1176' href='#n1176'>1176</a> <a id='n1177' href='#n1177'>1177</a> <a id='n1178' href='#n1178'>1178</a> <a id='n1179' href='#n1179'>1179</a> <a id='n1180' href='#n1180'>1180</a> <a id='n1181' href='#n1181'>1181</a> <a id='n1182' href='#n1182'>1182</a> <a id='n1183' href='#n1183'>1183</a> <a id='n1184' href='#n1184'>1184</a> <a id='n1185' href='#n1185'>1185</a> <a id='n1186' href='#n1186'>1186</a> <a id='n1187' href='#n1187'>1187</a> <a id='n1188' href='#n1188'>1188</a> <a id='n1189' href='#n1189'>1189</a> <a id='n1190' href='#n1190'>1190</a> <a id='n1191' href='#n1191'>1191</a> <a id='n1192' href='#n1192'>1192</a> <a id='n1193' href='#n1193'>1193</a> <a id='n1194' href='#n1194'>1194</a> <a id='n1195' href='#n1195'>1195</a> <a id='n1196' href='#n1196'>1196</a> <a id='n1197' href='#n1197'>1197</a> <a id='n1198' href='#n1198'>1198</a> <a id='n1199' href='#n1199'>1199</a> <a id='n1200' href='#n1200'>1200</a> <a id='n1201' href='#n1201'>1201</a> <a id='n1202' href='#n1202'>1202</a> <a id='n1203' href='#n1203'>1203</a> <a id='n1204' href='#n1204'>1204</a> <a id='n1205' href='#n1205'>1205</a> <a id='n1206' href='#n1206'>1206</a> <a id='n1207' href='#n1207'>1207</a> <a id='n1208' href='#n1208'>1208</a> <a id='n1209' href='#n1209'>1209</a> <a id='n1210' href='#n1210'>1210</a> <a id='n1211' href='#n1211'>1211</a> <a id='n1212' href='#n1212'>1212</a> <a id='n1213' href='#n1213'>1213</a> <a id='n1214' href='#n1214'>1214</a> <a id='n1215' href='#n1215'>1215</a> <a id='n1216' href='#n1216'>1216</a> <a id='n1217' href='#n1217'>1217</a> <a id='n1218' href='#n1218'>1218</a> <a id='n1219' href='#n1219'>1219</a> <a id='n1220' href='#n1220'>1220</a> <a id='n1221' href='#n1221'>1221</a> <a id='n1222' href='#n1222'>1222</a> <a id='n1223' href='#n1223'>1223</a> <a id='n1224' href='#n1224'>1224</a> <a id='n1225' href='#n1225'>1225</a> <a id='n1226' href='#n1226'>1226</a> <a id='n1227' href='#n1227'>1227</a> <a id='n1228' href='#n1228'>1228</a> <a id='n1229' href='#n1229'>1229</a> <a id='n1230' href='#n1230'>1230</a> <a id='n1231' href='#n1231'>1231</a> <a id='n1232' href='#n1232'>1232</a> <a id='n1233' href='#n1233'>1233</a> <a id='n1234' href='#n1234'>1234</a> <a id='n1235' href='#n1235'>1235</a> <a id='n1236' href='#n1236'>1236</a> <a id='n1237' href='#n1237'>1237</a> <a id='n1238' href='#n1238'>1238</a> <a id='n1239' href='#n1239'>1239</a> <a id='n1240' href='#n1240'>1240</a> <a id='n1241' href='#n1241'>1241</a> <a id='n1242' href='#n1242'>1242</a> <a id='n1243' href='#n1243'>1243</a> <a id='n1244' href='#n1244'>1244</a> <a id='n1245' href='#n1245'>1245</a> <a id='n1246' href='#n1246'>1246</a> <a id='n1247' href='#n1247'>1247</a> <a id='n1248' href='#n1248'>1248</a> <a id='n1249' href='#n1249'>1249</a> <a id='n1250' href='#n1250'>1250</a> <a id='n1251' href='#n1251'>1251</a> <a id='n1252' href='#n1252'>1252</a> <a id='n1253' href='#n1253'>1253</a> <a id='n1254' href='#n1254'>1254</a> <a id='n1255' href='#n1255'>1255</a> <a id='n1256' href='#n1256'>1256</a> <a id='n1257' href='#n1257'>1257</a> <a id='n1258' href='#n1258'>1258</a> <a id='n1259' href='#n1259'>1259</a> <a id='n1260' href='#n1260'>1260</a> <a id='n1261' href='#n1261'>1261</a> <a id='n1262' href='#n1262'>1262</a> <a id='n1263' href='#n1263'>1263</a> <a id='n1264' href='#n1264'>1264</a> <a id='n1265' href='#n1265'>1265</a> <a id='n1266' href='#n1266'>1266</a> <a id='n1267' href='#n1267'>1267</a> <a id='n1268' href='#n1268'>1268</a> <a id='n1269' href='#n1269'>1269</a> <a id='n1270' href='#n1270'>1270</a> <a id='n1271' href='#n1271'>1271</a> <a id='n1272' href='#n1272'>1272</a> <a id='n1273' href='#n1273'>1273</a> <a id='n1274' href='#n1274'>1274</a> <a id='n1275' href='#n1275'>1275</a> <a id='n1276' href='#n1276'>1276</a> <a id='n1277' href='#n1277'>1277</a> <a id='n1278' href='#n1278'>1278</a> <a id='n1279' href='#n1279'>1279</a> <a id='n1280' href='#n1280'>1280</a> <a id='n1281' href='#n1281'>1281</a> <a id='n1282' href='#n1282'>1282</a> <a id='n1283' href='#n1283'>1283</a> <a id='n1284' href='#n1284'>1284</a> <a id='n1285' href='#n1285'>1285</a> <a id='n1286' href='#n1286'>1286</a> <a id='n1287' href='#n1287'>1287</a> <a id='n1288' href='#n1288'>1288</a> <a id='n1289' href='#n1289'>1289</a> <a id='n1290' href='#n1290'>1290</a> <a id='n1291' href='#n1291'>1291</a> <a id='n1292' href='#n1292'>1292</a> <a id='n1293' href='#n1293'>1293</a> <a id='n1294' href='#n1294'>1294</a> <a id='n1295' href='#n1295'>1295</a> <a id='n1296' href='#n1296'>1296</a> <a id='n1297' href='#n1297'>1297</a> <a id='n1298' href='#n1298'>1298</a> <a id='n1299' href='#n1299'>1299</a> <a id='n1300' href='#n1300'>1300</a> <a id='n1301' href='#n1301'>1301</a> <a id='n1302' href='#n1302'>1302</a> <a id='n1303' href='#n1303'>1303</a> <a id='n1304' href='#n1304'>1304</a> <a id='n1305' href='#n1305'>1305</a> <a id='n1306' href='#n1306'>1306</a> <a id='n1307' href='#n1307'>1307</a> <a id='n1308' href='#n1308'>1308</a> <a id='n1309' href='#n1309'>1309</a> <a id='n1310' href='#n1310'>1310</a> <a id='n1311' href='#n1311'>1311</a> <a id='n1312' href='#n1312'>1312</a> <a id='n1313' href='#n1313'>1313</a> <a id='n1314' href='#n1314'>1314</a> <a id='n1315' href='#n1315'>1315</a> <a id='n1316' href='#n1316'>1316</a> <a id='n1317' href='#n1317'>1317</a> <a id='n1318' href='#n1318'>1318</a> <a id='n1319' href='#n1319'>1319</a> <a id='n1320' href='#n1320'>1320</a> <a id='n1321' href='#n1321'>1321</a> <a id='n1322' href='#n1322'>1322</a> <a id='n1323' href='#n1323'>1323</a> <a id='n1324' href='#n1324'>1324</a> <a id='n1325' href='#n1325'>1325</a> <a id='n1326' href='#n1326'>1326</a> <a id='n1327' href='#n1327'>1327</a> <a id='n1328' href='#n1328'>1328</a> <a id='n1329' href='#n1329'>1329</a> <a id='n1330' href='#n1330'>1330</a> <a id='n1331' href='#n1331'>1331</a> <a id='n1332' href='#n1332'>1332</a> <a id='n1333' href='#n1333'>1333</a> <a id='n1334' href='#n1334'>1334</a> <a id='n1335' href='#n1335'>1335</a> <a id='n1336' href='#n1336'>1336</a> <a id='n1337' href='#n1337'>1337</a> <a id='n1338' href='#n1338'>1338</a> <a id='n1339' href='#n1339'>1339</a> <a id='n1340' href='#n1340'>1340</a> <a id='n1341' href='#n1341'>1341</a> <a id='n1342' href='#n1342'>1342</a> <a id='n1343' href='#n1343'>1343</a> <a id='n1344' href='#n1344'>1344</a> <a id='n1345' href='#n1345'>1345</a> <a id='n1346' href='#n1346'>1346</a> <a id='n1347' href='#n1347'>1347</a> <a id='n1348' href='#n1348'>1348</a> <a id='n1349' href='#n1349'>1349</a> <a id='n1350' href='#n1350'>1350</a> <a id='n1351' href='#n1351'>1351</a> <a id='n1352' href='#n1352'>1352</a> <a id='n1353' href='#n1353'>1353</a> <a id='n1354' href='#n1354'>1354</a> <a id='n1355' href='#n1355'>1355</a> <a id='n1356' href='#n1356'>1356</a> <a id='n1357' href='#n1357'>1357</a> <a id='n1358' href='#n1358'>1358</a> <a id='n1359' href='#n1359'>1359</a> <a id='n1360' href='#n1360'>1360</a> <a id='n1361' href='#n1361'>1361</a> <a id='n1362' href='#n1362'>1362</a> <a id='n1363' href='#n1363'>1363</a> <a id='n1364' href='#n1364'>1364</a> <a id='n1365' href='#n1365'>1365</a> <a id='n1366' href='#n1366'>1366</a> <a id='n1367' href='#n1367'>1367</a> <a id='n1368' href='#n1368'>1368</a> <a id='n1369' href='#n1369'>1369</a> <a id='n1370' href='#n1370'>1370</a> <a id='n1371' href='#n1371'>1371</a> <a id='n1372' href='#n1372'>1372</a> <a id='n1373' href='#n1373'>1373</a> <a id='n1374' href='#n1374'>1374</a> <a id='n1375' href='#n1375'>1375</a> <a id='n1376' href='#n1376'>1376</a> <a id='n1377' href='#n1377'>1377</a> <a id='n1378' href='#n1378'>1378</a> <a id='n1379' href='#n1379'>1379</a> <a id='n1380' href='#n1380'>1380</a> <a id='n1381' href='#n1381'>1381</a> <a id='n1382' href='#n1382'>1382</a> <a id='n1383' href='#n1383'>1383</a> <a id='n1384' href='#n1384'>1384</a> <a id='n1385' href='#n1385'>1385</a> <a id='n1386' href='#n1386'>1386</a> <a id='n1387' href='#n1387'>1387</a> <a id='n1388' href='#n1388'>1388</a> <a id='n1389' href='#n1389'>1389</a> <a id='n1390' href='#n1390'>1390</a> <a id='n1391' href='#n1391'>1391</a> <a id='n1392' href='#n1392'>1392</a> <a id='n1393' href='#n1393'>1393</a> <a id='n1394' href='#n1394'>1394</a> <a id='n1395' href='#n1395'>1395</a> <a id='n1396' href='#n1396'>1396</a> <a id='n1397' href='#n1397'>1397</a> <a id='n1398' href='#n1398'>1398</a> <a id='n1399' href='#n1399'>1399</a> <a id='n1400' href='#n1400'>1400</a> <a id='n1401' href='#n1401'>1401</a> <a id='n1402' href='#n1402'>1402</a> <a id='n1403' href='#n1403'>1403</a> <a id='n1404' href='#n1404'>1404</a> <a id='n1405' href='#n1405'>1405</a> <a id='n1406' href='#n1406'>1406</a> <a id='n1407' href='#n1407'>1407</a> <a id='n1408' href='#n1408'>1408</a> <a id='n1409' href='#n1409'>1409</a> <a id='n1410' href='#n1410'>1410</a> <a id='n1411' href='#n1411'>1411</a> <a id='n1412' href='#n1412'>1412</a> <a id='n1413' href='#n1413'>1413</a> <a id='n1414' href='#n1414'>1414</a> <a id='n1415' href='#n1415'>1415</a> <a id='n1416' href='#n1416'>1416</a> <a id='n1417' href='#n1417'>1417</a> <a id='n1418' href='#n1418'>1418</a> <a id='n1419' href='#n1419'>1419</a> <a id='n1420' href='#n1420'>1420</a> <a id='n1421' href='#n1421'>1421</a> <a id='n1422' href='#n1422'>1422</a> <a id='n1423' href='#n1423'>1423</a> <a id='n1424' href='#n1424'>1424</a> <a id='n1425' href='#n1425'>1425</a> <a id='n1426' href='#n1426'>1426</a> <a id='n1427' href='#n1427'>1427</a> <a id='n1428' href='#n1428'>1428</a> <a id='n1429' href='#n1429'>1429</a> <a id='n1430' href='#n1430'>1430</a> <a id='n1431' href='#n1431'>1431</a> <a id='n1432' href='#n1432'>1432</a> <a id='n1433' href='#n1433'>1433</a> <a id='n1434' href='#n1434'>1434</a> <a id='n1435' href='#n1435'>1435</a> <a id='n1436' href='#n1436'>1436</a> <a id='n1437' href='#n1437'>1437</a> <a id='n1438' href='#n1438'>1438</a> <a id='n1439' href='#n1439'>1439</a> <a id='n1440' href='#n1440'>1440</a> <a id='n1441' href='#n1441'>1441</a> <a id='n1442' href='#n1442'>1442</a> <a id='n1443' href='#n1443'>1443</a> <a id='n1444' href='#n1444'>1444</a> <a id='n1445' href='#n1445'>1445</a> <a id='n1446' href='#n1446'>1446</a> <a id='n1447' href='#n1447'>1447</a> <a id='n1448' href='#n1448'>1448</a> <a id='n1449' href='#n1449'>1449</a> <a id='n1450' href='#n1450'>1450</a> <a id='n1451' href='#n1451'>1451</a> <a id='n1452' href='#n1452'>1452</a> <a id='n1453' href='#n1453'>1453</a> <a id='n1454' href='#n1454'>1454</a> <a id='n1455' href='#n1455'>1455</a> <a id='n1456' href='#n1456'>1456</a> <a id='n1457' href='#n1457'>1457</a> <a id='n1458' href='#n1458'>1458</a> <a id='n1459' href='#n1459'>1459</a> <a id='n1460' href='#n1460'>1460</a> <a id='n1461' href='#n1461'>1461</a> <a id='n1462' href='#n1462'>1462</a> <a id='n1463' href='#n1463'>1463</a> <a id='n1464' href='#n1464'>1464</a> <a id='n1465' href='#n1465'>1465</a> <a id='n1466' href='#n1466'>1466</a> <a id='n1467' href='#n1467'>1467</a> <a id='n1468' href='#n1468'>1468</a> <a id='n1469' href='#n1469'>1469</a> <a id='n1470' href='#n1470'>1470</a> <a id='n1471' href='#n1471'>1471</a> <a id='n1472' href='#n1472'>1472</a> <a id='n1473' href='#n1473'>1473</a> <a id='n1474' href='#n1474'>1474</a> <a id='n1475' href='#n1475'>1475</a> <a id='n1476' href='#n1476'>1476</a> <a id='n1477' href='#n1477'>1477</a> <a id='n1478' href='#n1478'>1478</a> <a id='n1479' href='#n1479'>1479</a> <a id='n1480' href='#n1480'>1480</a> <a id='n1481' href='#n1481'>1481</a> <a id='n1482' href='#n1482'>1482</a> <a id='n1483' href='#n1483'>1483</a> <a id='n1484' href='#n1484'>1484</a> <a id='n1485' href='#n1485'>1485</a> <a id='n1486' href='#n1486'>1486</a> <a id='n1487' href='#n1487'>1487</a> <a id='n1488' href='#n1488'>1488</a> <a id='n1489' href='#n1489'>1489</a> <a id='n1490' href='#n1490'>1490</a> <a id='n1491' href='#n1491'>1491</a> <a id='n1492' href='#n1492'>1492</a> <a id='n1493' href='#n1493'>1493</a> <a id='n1494' href='#n1494'>1494</a> <a id='n1495' href='#n1495'>1495</a> <a id='n1496' href='#n1496'>1496</a> <a id='n1497' href='#n1497'>1497</a> <a id='n1498' href='#n1498'>1498</a> <a id='n1499' href='#n1499'>1499</a> <a id='n1500' href='#n1500'>1500</a> <a id='n1501' href='#n1501'>1501</a> <a id='n1502' href='#n1502'>1502</a> <a id='n1503' href='#n1503'>1503</a> <a id='n1504' href='#n1504'>1504</a> <a id='n1505' href='#n1505'>1505</a> <a id='n1506' href='#n1506'>1506</a> <a id='n1507' href='#n1507'>1507</a> <a id='n1508' href='#n1508'>1508</a> <a id='n1509' href='#n1509'>1509</a> <a id='n1510' href='#n1510'>1510</a> <a id='n1511' href='#n1511'>1511</a> <a id='n1512' href='#n1512'>1512</a> <a id='n1513' href='#n1513'>1513</a> <a id='n1514' href='#n1514'>1514</a> <a id='n1515' href='#n1515'>1515</a> <a id='n1516' href='#n1516'>1516</a> <a id='n1517' href='#n1517'>1517</a> <a id='n1518' href='#n1518'>1518</a> <a id='n1519' href='#n1519'>1519</a> <a id='n1520' href='#n1520'>1520</a> <a id='n1521' href='#n1521'>1521</a> <a id='n1522' href='#n1522'>1522</a> <a id='n1523' href='#n1523'>1523</a> <a id='n1524' href='#n1524'>1524</a> <a id='n1525' href='#n1525'>1525</a> <a id='n1526' href='#n1526'>1526</a> <a id='n1527' href='#n1527'>1527</a> <a id='n1528' href='#n1528'>1528</a> <a id='n1529' href='#n1529'>1529</a> <a id='n1530' href='#n1530'>1530</a> <a id='n1531' href='#n1531'>1531</a> <a id='n1532' href='#n1532'>1532</a> <a id='n1533' href='#n1533'>1533</a> <a id='n1534' href='#n1534'>1534</a> <a id='n1535' href='#n1535'>1535</a> <a id='n1536' href='#n1536'>1536</a> <a id='n1537' href='#n1537'>1537</a> <a id='n1538' href='#n1538'>1538</a> <a id='n1539' href='#n1539'>1539</a> <a id='n1540' href='#n1540'>1540</a> <a id='n1541' href='#n1541'>1541</a> <a id='n1542' href='#n1542'>1542</a> <a id='n1543' href='#n1543'>1543</a> <a id='n1544' href='#n1544'>1544</a> <a id='n1545' href='#n1545'>1545</a> <a id='n1546' href='#n1546'>1546</a> <a id='n1547' href='#n1547'>1547</a> <a id='n1548' href='#n1548'>1548</a> <a id='n1549' href='#n1549'>1549</a> <a id='n1550' href='#n1550'>1550</a> <a id='n1551' href='#n1551'>1551</a> <a id='n1552' href='#n1552'>1552</a> <a id='n1553' href='#n1553'>1553</a> <a id='n1554' href='#n1554'>1554</a> <a id='n1555' href='#n1555'>1555</a> <a id='n1556' href='#n1556'>1556</a> <a id='n1557' href='#n1557'>1557</a> <a id='n1558' href='#n1558'>1558</a> <a id='n1559' href='#n1559'>1559</a> <a id='n1560' href='#n1560'>1560</a> <a id='n1561' href='#n1561'>1561</a> <a id='n1562' href='#n1562'>1562</a> <a id='n1563' href='#n1563'>1563</a> <a id='n1564' href='#n1564'>1564</a> <a id='n1565' href='#n1565'>1565</a> <a id='n1566' href='#n1566'>1566</a> <a id='n1567' href='#n1567'>1567</a> <a id='n1568' href='#n1568'>1568</a> <a id='n1569' href='#n1569'>1569</a> <a id='n1570' href='#n1570'>1570</a> <a id='n1571' href='#n1571'>1571</a> </pre></td> <td class='lines'><pre><code>#!/bin/sh # Distributed under the OSI-approved BSD 3-Clause License. See accompanying # file Copyright.txt or https://cmake.org/licensing for details. die() { echo "$@" 1>&2 ; exit 1 } # Version number extraction function. cmake_version_component() { cat "${cmake_source_dir}/Source/CMakeVersion.cmake" | sed -n " /^set(CMake_VERSION_${1}/ {s/set(CMake_VERSION_${1} *\([0-9]*\))/\1/;p;} " } # Install destination extraction function. cmake_install_dest_default() { cat "${cmake_source_dir}/Source/CMakeInstallDestinations.cmake" | sed -n ' /^ *set(CMAKE_'"${1}"'_DIR_DEFAULT.*) # '"${2}"'$/ { s/^ *set(CMAKE_'"${1}"'_DIR_DEFAULT *"\([^"]*\)").*$/\1/ s/${CMake_VERSION_MAJOR}/'"${cmake_version_major}"'/ s/${CMake_VERSION_MINOR}/'"${cmake_version_minor}"'/ s/${CMake_VERSION_PATCH}/'"${cmake_version_patch}"'/ p q } ' } cmake_toupper() { echo "$1" | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' } # Detect system and directory information. cmake_system=`uname` cmake_source_dir=`cd "\`dirname \"$0\"\`";pwd` cmake_binary_dir=`pwd` # Load version information. cmake_version_major="`cmake_version_component MAJOR`" cmake_version_minor="`cmake_version_component MINOR`" cmake_version_patch="`cmake_version_component PATCH`" cmake_version="${cmake_version_major}.${cmake_version_minor}.${cmake_version_patch}" cmake_version_rc="`cmake_version_component RC`" if [ "$cmake_version_rc" != "" ]; then cmake_version="${cmake_version}-rc${cmake_version_rc}" fi cmake_copyright="`grep '^Copyright .* Kitware' "${cmake_source_dir}/Copyright.txt"`" cmake_bin_dir_keyword="OTHER" cmake_data_dir_keyword="OTHER" cmake_doc_dir_keyword="OTHER" cmake_man_dir_keyword="OTHER" cmake_xdgdata_dir_keyword="OTHER" cmake_bin_dir="" cmake_data_dir="" cmake_doc_dir="" cmake_man_dir="" cmake_xdgdata_dir="" cmake_init_file="" cmake_bootstrap_system_libs="" cmake_bootstrap_qt_gui="" cmake_bootstrap_qt_qmake="" cmake_bootstrap_server="" cmake_sphinx_man="" cmake_sphinx_html="" cmake_sphinx_qthelp="" cmake_sphinx_build="" cmake_sphinx_flags="" # Determine whether this is a Cygwin environment. if echo "${cmake_system}" | grep CYGWIN >/dev/null 2>&1; then cmake_system_cygwin=true cmake_doc_dir_keyword="CYGWIN" cmake_man_dir_keyword="CYGWIN" else cmake_system_cygwin=false fi # Determine whether this is a MinGW environment. if echo "${cmake_system}" | grep 'MINGW\|MSYS' >/dev/null 2>&1; then cmake_system_mingw=true else cmake_system_mingw=false fi # Determine whether this is OS X if echo "${cmake_system}" | grep Darwin >/dev/null 2>&1; then cmake_system_darwin=true else cmake_system_darwin=false fi # Determine whether this is BeOS if echo "${cmake_system}" | grep BeOS >/dev/null 2>&1; then cmake_system_beos=true cmake_doc_dir_keyword="HAIKU" cmake_man_dir_keyword="HAIKU" else cmake_system_beos=false fi # Determine whether this is Haiku if echo "${cmake_system}" | grep Haiku >/dev/null 2>&1; then cmake_system_haiku=true cmake_doc_dir_keyword="HAIKU" cmake_man_dir_keyword="HAIKU" else cmake_system_haiku=false fi # Determine whether this is OpenVMS if echo "${cmake_system}" | grep OpenVMS >/dev/null 2>&1; then cmake_system_openvms=true else cmake_system_openvms=false fi # Determine whether this is HP-UX if echo "${cmake_system}" | grep HP-UX >/dev/null 2>&1; then cmake_system_hpux=true else cmake_system_hpux=false fi # Determine whether this is Linux if echo "${cmake_system}" | grep Linux >/dev/null 2>&1; then cmake_system_linux=true else cmake_system_linux=false fi # Determine whether this is a PA-RISC machine # This only works for Linux or HP-UX, not other PA-RISC OSs (BSD maybe?). Also # may falsely detect parisc on HP-UX m68k cmake_machine_parisc=false if ${cmake_system_linux}; then if uname -m | grep parisc >/dev/null 2>&1; then cmake_machine_parisc=true fi elif ${cmake_system_hpux}; then if uname -m | grep ia64 >/dev/null 2>&1; then : ; else cmake_machine_parisc=true fi fi # Choose the generator to use for bootstrapping. if ${cmake_system_mingw}; then # Bootstrapping from an MSYS prompt. cmake_bootstrap_generator="MSYS Makefiles" else # Bootstrapping from a standard UNIX prompt. cmake_bootstrap_generator="Unix Makefiles" fi # Choose tools and extensions for this platform. if ${cmake_system_openvms}; then _tmp="_tmp" _cmk="_cmk" _diff=`which diff` else _tmp=".tmp" _cmk=".cmk" _diff="diff" fi # Construct bootstrap directory name. cmake_bootstrap_dir="${cmake_binary_dir}/Bootstrap${_cmk}" # Helper function to fix windows paths. case "${cmake_system}" in *MINGW*) cmake_fix_slashes() { cmd //c echo "$(echo "$1" | sed 's/\\/\//g')" | sed 's/^"//;s/" *$//' } ;; *) cmake_fix_slashes() { echo "$1" | sed 's/\\/\//g' } ;; esac # Choose the default install prefix. if ${cmake_system_mingw}; then if [ "x${PROGRAMFILES}" != "x" ]; then cmake_default_prefix=`cmake_fix_slashes "${PROGRAMFILES}/CMake"` elif [ "x${ProgramFiles}" != "x" ]; then cmake_default_prefix=`cmake_fix_slashes "${ProgramFiles}/CMake"` elif [ "x${SYSTEMDRIVE}" != "x" ]; then cmake_default_prefix=`cmake_fix_slashes "${SYSTEMDRIVE}/Program Files/CMake"` elif [ "x${SystemDrive}" != "x" ]; then cmake_default_prefix=`cmake_fix_slashes "${SystemDrive}/Program Files/CMake"` else cmake_default_prefix="c:/Program Files/CMake" fi elif ${cmake_system_haiku}; then cmake_default_prefix=`finddir B_COMMON_DIRECTORY` else cmake_default_prefix="/usr/local" fi # Lookup default install destinations. cmake_bin_dir_default="`cmake_install_dest_default BIN ${cmake_bin_dir_keyword}`" cmake_data_dir_default="`cmake_install_dest_default DATA ${cmake_data_dir_keyword}`" cmake_doc_dir_default="`cmake_install_dest_default DOC ${cmake_doc_dir_keyword}`" cmake_man_dir_default="`cmake_install_dest_default MAN ${cmake_man_dir_keyword}`" cmake_xdgdata_dir_default="`cmake_install_dest_default XDGDATA ${cmake_xdgdata_dir_keyword}`" CMAKE_KNOWN_C_COMPILERS="cc gcc xlc icc tcc" CMAKE_KNOWN_CXX_COMPILERS="aCC xlC CC g++ c++ icc como " CMAKE_KNOWN_MAKE_PROCESSORS="gmake make" CMAKE_PROBLEMATIC_FILES="\ CMakeCache.txt \ CMakeSystem.cmake \ CMakeCCompiler.cmake \ CMakeCXXCompiler.cmake \ */CMakeSystem.cmake \ */CMakeCCompiler.cmake \ */CMakeCXXCompiler.cmake \ Source/cmConfigure.h \ Source/CTest/Curl/config.h \ Utilities/cmexpat/expatConfig.h \ Utilities/cmexpat/expatDllConfig.h \ " CMAKE_UNUSED_SOURCES="\ cmGlobalXCodeGenerator \ cmLocalXCodeGenerator \ cmXCodeObject \ cmXCode21Object \ cmSourceGroup \ " CMAKE_CXX_SOURCES="\ cmAddCustomCommandCommand \ cmAddCustomTargetCommand \ cmAddDefinitionsCommand \ cmAddDependenciesCommand \ cmAddExecutableCommand \ cmAddLibraryCommand \ cmAddSubDirectoryCommand \ cmAddTestCommand \ cmBreakCommand \ cmBuildCommand \ cmCMakeMinimumRequired \ cmCMakePolicyCommand \ cmCPackPropertiesGenerator \ cmCacheManager \ cmCommand \ cmCommandArgumentLexer \ cmCommandArgumentParser \ cmCommandArgumentParserHelper \ cmCommandArgumentsHelper \ cmCommands \ cmCommonTargetGenerator \ cmComputeComponentGraph \ cmComputeLinkDepends \ cmComputeLinkInformation \ cmComputeTargetDepends \ cmConditionEvaluator \ cmConfigureFileCommand \ cmContinueCommand \ cmCoreTryCompile \ cmCreateTestSourceList \ cmCustomCommand \ cmCustomCommandGenerator \ cmDefinePropertyCommand \ cmDefinitions \ cmDepends \ cmDependsC \ cmDocumentationFormatter \ cmEnableLanguageCommand \ cmEnableTestingCommand \ cmExecProgramCommand \ cmExecuteProcessCommand \ cmExpandedCommandArgument \ cmExportBuildFileGenerator \ cmExportFileGenerator \ cmExportInstallFileGenerator \ cmExportSet \ cmExportSetMap \ cmExportTryCompileFileGenerator \ cmExprLexer \ cmExprParser \ cmExprParserHelper \ cmExternalMakefileProjectGenerator \ cmFileCommand \ cmFileTimeComparison \ cmFindBase \ cmFindCommon \ cmFindFileCommand \ cmFindLibraryCommand \ cmFindPackageCommand \ cmFindPathCommand \ cmFindProgramCommand \ cmForEachCommand \ cmFunctionCommand \ cmGeneratedFileStream \ cmGeneratorExpression \ cmGeneratorExpressionContext \ cmGeneratorExpressionDAGChecker \ cmGeneratorExpressionEvaluationFile \ cmGeneratorExpressionEvaluator \ cmGeneratorExpressionLexer \ cmGeneratorExpressionNode \ cmGeneratorExpressionParser \ cmGeneratorTarget \ cmGetCMakePropertyCommand \ cmGetDirectoryPropertyCommand \ cmGetFilenameComponentCommand \ cmGetPropertyCommand \ cmGetSourceFilePropertyCommand \ cmGetTargetPropertyCommand \ cmGetTestPropertyCommand \ cmGlobalCommonGenerator \ cmGlobalGenerator \ cmGlobalUnixMakefileGenerator3 \ cmHexFileConverter \ cmIfCommand \ cmIncludeCommand \ cmIncludeDirectoryCommand \ cmIncludeRegularExpressionCommand \ cmInstallCommand \ cmInstallCommandArguments \ cmInstallDirectoryGenerator \ cmInstallExportGenerator \ cmInstallFilesCommand \ cmInstallFilesGenerator \ cmInstallGenerator \ cmInstallScriptGenerator \ cmInstallTargetGenerator \ cmInstallTargetsCommand \ cmInstalledFile \ cmLinkDirectoriesCommand \ cmLinkLineComputer \ cmListCommand \ cmListFileCache \ cmLocalCommonGenerator \ cmLocalGenerator \ cmLocalUnixMakefileGenerator3 \ cmMSVC60LinkLineComputer \ cmMacroCommand \ cmMakeDirectoryCommand \ cmMakefile \ cmMakefileExecutableTargetGenerator \ cmMakefileLibraryTargetGenerator \ cmMakefileTargetGenerator \ cmMakefileUtilityTargetGenerator \ cmMarkAsAdvancedCommand \ cmMathCommand \ cmMessageCommand \ cmMessenger \ cmNewLineStyle \ cmOSXBundleGenerator \ cmOptionCommand \ cmOrderDirectories \ cmOutputConverter \ cmParseArgumentsCommand \ cmPathLabel \ cmPolicies \ cmProcessOutput \ cmProjectCommand \ cmProperty \ cmPropertyDefinition \ cmPropertyDefinitionMap \ cmPropertyMap \ cmReturnCommand \ cmRulePlaceholderExpander \ cmScriptGenerator \ cmSearchPath \ cmSeparateArgumentsCommand \ cmSetCommand \ cmSetDirectoryPropertiesCommand \ cmSetPropertyCommand \ cmSetSourceFilesPropertiesCommand \ cmSetTargetPropertiesCommand \ cmSetTestsPropertiesCommand \ cmSiteNameCommand \ cmSourceFile \ cmSourceFileLocation \ cmState \ cmStateDirectory \ cmStateSnapshot \ cmStringCommand \ cmSubdirCommand \ cmSystemTools \ cmTarget \ cmTargetLinkLibrariesCommand \ cmTargetPropertyComputer \ cmTest \ cmTestGenerator \ cmTimestamp \ cmTryCompileCommand \ cmTryRunCommand \ cmUnexpectedCommand \ cmUnsetCommand \ cmVersion \ cmWhileCommand \ cmake \ cmakemain \ cmcmd \ " if ${cmake_system_mingw}; then CMAKE_CXX_SOURCES="${CMAKE_CXX_SOURCES}\ cmGlobalMSYSMakefileGenerator \ cmGlobalMinGWMakefileGenerator" fi CMAKE_C_SOURCES="\ cmListFileLexer \ " if ${cmake_system_mingw}; then KWSYS_C_SOURCES="\ EncodingC \ ProcessWin32 \ String \ System \ Terminal" else KWSYS_C_SOURCES="\ EncodingC \ ProcessUNIX \ String \ System \ Terminal" fi KWSYS_CXX_SOURCES="\ Directory \ EncodingCXX \ FStream \ Glob \ RegularExpression \ SystemTools" KWSYS_FILES="\ Directory.hxx \ Encoding.h \ Encoding.hxx \ FStream.hxx \ Glob.hxx \ Process.h \ RegularExpression.hxx \ String.h \ String.hxx \ System.h \ SystemTools.hxx \ Terminal.h" # Display CMake bootstrap usage cmake_usage() { echo ' Usage: '"$0"' [<options>...] [-- <cmake-options>...] Options: [defaults in brackets after descriptions] Configuration: --help print this message --version only print version information --verbose display more information --parallel=n bootstrap cmake in parallel, where n is number of nodes [1] --enable-ccache Enable ccache when building cmake --init=FILE load FILE as script to populate cache --system-libs use all system-installed third-party libraries (for use only by package maintainers) --no-system-libs use all cmake-provided third-party libraries (default) --system-curl use system-installed curl library --no-system-curl use cmake-provided curl library (default) --system-expat use system-installed expat library --no-system-expat use cmake-provided expat library (default) --system-jsoncpp use system-installed jsoncpp library --no-system-jsoncpp use cmake-provided jsoncpp library (default) --system-zlib use system-installed zlib library --no-system-zlib use cmake-provided zlib library (default) --system-bzip2 use system-installed bzip2 library --no-system-bzip2 use cmake-provided bzip2 library (default) --system-liblzma use system-installed liblzma library --no-system-liblzma use cmake-provided liblzma library (default) --system-libarchive use system-installed libarchive library --no-system-libarchive use cmake-provided libarchive library (default) --system-librhash use system-installed librhash library --no-system-librhash use cmake-provided librhash library (default) --qt-gui build the Qt-based GUI (requires Qt >= 4.2) --no-qt-gui do not build the Qt-based GUI (default) --qt-qmake=<qmake> use <qmake> as the qmake executable to find Qt --server enable the server mode (default if supported) --no-server disable the server mode --sphinx-man build man pages with Sphinx --sphinx-html build html help with Sphinx --sphinx-qthelp build qch help with Sphinx --sphinx-build=<sb> use <sb> as the sphinx-build executable --sphinx-flags=<flags> pass <flags> to sphinx-build executable Directory and file names: --prefix=PREFIX install files in tree rooted at PREFIX ['"${cmake_default_prefix}"'] --bindir=DIR install binaries in PREFIX/DIR ['"${cmake_bin_dir_default}"'] --datadir=DIR install data files in PREFIX/DIR ['"${cmake_data_dir_default}"'] --docdir=DIR install documentation files in PREFIX/DIR ['"${cmake_doc_dir_default}"'] --mandir=DIR install man pages files in PREFIX/DIR/manN ['"${cmake_man_dir_default}"'] --xdgdatadir=DIR install XDG specific files in PREFIX/DIR ['"${cmake_xdgdata_dir_default}"'] ' exit 10 } # Display CMake bootstrap usage cmake_version_display() { echo "CMake ${cmake_version}, ${cmake_copyright}" } # Display CMake bootstrap error, display the log file and exit cmake_error() { res=$1 shift 1 echo "---------------------------------------------" echo "Error when bootstrapping CMake:" echo "$*" echo "---------------------------------------------" if [ -f cmake_bootstrap.log ]; then echo "Log of errors: `pwd`/cmake_bootstrap.log" #cat cmake_bootstrap.log echo "---------------------------------------------" fi exit ${res} } cmake_generate_file () { OUTFILE="$1" CONTENT="$2" echo "$CONTENT" > "$OUTFILE.tmp" if "${_diff}" "$OUTFILE.tmp" "$OUTFILE" > /dev/null 2> /dev/null ; then rm -f "$OUTFILE.tmp" else mv -f "$OUTFILE.tmp" "$OUTFILE" fi } # Replace KWSYS_NAMESPACE with cmsys cmake_replace_string () { INFILE="$1" OUTFILE="$2" SEARCHFOR="$3" REPLACEWITH="$4" if [ -f "${INFILE}" ] || ${cmake_system_openvms}; then cat "${INFILE}" | sed "s/\@${SEARCHFOR}\@/${REPLACEWITH}/g" > "${OUTFILE}${_tmp}" if [ -f "${OUTFILE}${_tmp}" ]; then if "${_diff}" "${OUTFILE}" "${OUTFILE}${_tmp}" > /dev/null 2> /dev/null ; then #echo "Files are the same" rm -f "${OUTFILE}${_tmp}" else mv -f "${OUTFILE}${_tmp}" "${OUTFILE}" fi fi else cmake_error 1 "Cannot find file ${INFILE}" fi } cmake_kwsys_config_replace_string () { INFILE="$1" OUTFILE="$2" shift 2 APPEND="$*" if [ -f "${INFILE}" ] || ${cmake_system_openvms}; then echo "${APPEND}" > "${OUTFILE}${_tmp}" cat "${INFILE}" | sed "/./ {s/\@KWSYS_NAMESPACE\@/cmsys/g; s/@KWSYS_BUILD_SHARED@/${KWSYS_BUILD_SHARED}/g; s/@KWSYS_LFS_AVAILABLE@/${KWSYS_LFS_AVAILABLE}/g; s/@KWSYS_LFS_REQUESTED@/${KWSYS_LFS_REQUESTED}/g; s/@KWSYS_NAME_IS_KWSYS@/${KWSYS_NAME_IS_KWSYS}/g; s/@KWSYS_STL_HAS_WSTRING@/${KWSYS_STL_HAS_WSTRING}/g; s/@KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H@/${KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H}/g; }" >> "${OUTFILE}${_tmp}" if [ -f "${OUTFILE}${_tmp}" ]; then if "${_diff}" "${OUTFILE}" "${OUTFILE}${_tmp}" > /dev/null 2> /dev/null ; then #echo "Files are the same" rm -f "${OUTFILE}${_tmp}" else mv -f "${OUTFILE}${_tmp}" "${OUTFILE}" fi fi else cmake_error 2 "Cannot find file ${INFILE}" fi } # Write string into a file cmake_report () { FILE=$1 shift echo "$*" >> ${FILE} } # Escape spaces in strings cmake_escape () { echo $1 | sed "s/ /\\\\ /g" } # Strip prefix from argument cmake_arg () { echo "$1" | sed "s/^${2-[^=]*=}//" } # Write message to the log cmake_log () { echo "$*" >> cmake_bootstrap.log } # Return temp file cmake_tmp_file () { echo "cmake_bootstrap_$$_test" } # Run a compiler test. First argument is compiler, second one are compiler # flags, third one is test source file to be compiled cmake_try_run () { COMPILER=$1 FLAGS=$2 TESTFILE=$3 if [ ! -f "${TESTFILE}" ]; then echo "Test file ${TESTFILE} missing. Please verify your CMake source tree." exit 4 fi TMPFILE=`cmake_tmp_file` echo "Try: ${COMPILER}" echo "Line: ${COMPILER} ${FLAGS} ${TESTFILE} -o ${TMPFILE}" echo "---------- file -----------------------" cat "${TESTFILE}" echo "------------------------------------------" "${COMPILER}" ${FLAGS} "${TESTFILE}" -o "${TMPFILE}" RES=$? if [ "${RES}" -ne "0" ]; then echo "Test failed to compile" return 1 fi if [ ! -f "${TMPFILE}" ] && [ ! -f "${TMPFILE}.exe" ]; then echo "Test failed to produce executable" return 2 fi ./${TMPFILE} RES=$? rm -f "${TMPFILE}" if [ "${RES}" -ne "0" ]; then echo "Test produced non-zero return code" return 3 fi echo "Test succeeded" return 0 } # Run a make test. First argument is the make interpreter. cmake_try_make () { MAKE_PROC="$1" MAKE_FLAGS="$2" echo "Try: ${MAKE_PROC}" "${MAKE_PROC}" ${MAKE_FLAGS} RES=$? if [ "${RES}" -ne "0" ]; then echo "${MAKE_PROC} does not work" return 1 fi if [ ! -f "test" ] && [ ! -f "test.exe" ]; then echo "${COMPILER} does not produce output" return 2 fi ./test RES=$? rm -f "test" if [ "${RES}" -ne "0" ]; then echo "${MAKE_PROC} produces strange executable" return 3 fi echo "${MAKE_PROC} works" return 0 } # Parse arguments cmake_verbose= cmake_parallel_make= cmake_ccache_enabled= cmake_prefix_dir="${cmake_default_prefix}" while test $# != 0; do case "$1" in --prefix=*) dir=`cmake_arg "$1"` cmake_prefix_dir=`cmake_fix_slashes "$dir"` ;; --parallel=*) cmake_parallel_make=`cmake_arg "$1"` ;; --bindir=*) cmake_bin_dir=`cmake_arg "$1"` ;; --datadir=*) cmake_data_dir=`cmake_arg "$1"` ;; --docdir=*) cmake_doc_dir=`cmake_arg "$1"` ;; --mandir=*) cmake_man_dir=`cmake_arg "$1"` ;; --xdgdatadir=*) cmake_xdgdata_dir=`cmake_arg "$1"` ;; --init=*) cmake_init_file=`cmake_arg "$1"` ;; --system-libs) cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARIES=1" ;; --no-system-libs) cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARIES=0" ;; --system-bzip2|--system-curl|--system-expat|--system-jsoncpp|--system-libarchive|--system-librhash|--system-zlib|--system-liblzma) lib=`cmake_arg "$1" "--system-"` cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARY_`cmake_toupper $lib`=1" ;; --no-system-bzip2|--no-system-curl|--no-system-expat|--no-system-jsoncpp|--no-system-libarchive|--no-system-librhash|--no-system-zlib|--no-system-liblzma) lib=`cmake_arg "$1" "--no-system-"` cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARY_`cmake_toupper $lib`=0" ;; --qt-gui) cmake_bootstrap_qt_gui="1" ;; --no-qt-gui) cmake_bootstrap_qt_gui="0" ;; --qt-qmake=*) cmake_bootstrap_qt_qmake=`cmake_arg "$1"` ;; --server) cmake_bootstrap_server="1" ;; --no-server) cmake_bootstrap_server="0" ;; --sphinx-man) cmake_sphinx_man="1" ;; --sphinx-html) cmake_sphinx_html="1" ;; --sphinx-qthelp) cmake_sphinx_qthelp="1" ;; --sphinx-build=*) cmake_sphinx_build=`cmake_arg "$1"` ;; --sphinx-flags=*) cmake_sphinx_flags=`cmake_arg "$1"` ;; --help) cmake_usage ;; --version) cmake_version_display ; exit 2 ;; --verbose) cmake_verbose=TRUE ;; --enable-ccache) cmake_ccache_enabled=TRUE ;; --) shift; break ;; *) die "Unknown option: $1" ;; esac shift done # If verbose, display some information about bootstrap if [ -n "${cmake_verbose}" ]; then echo "---------------------------------------------" echo "Source directory: ${cmake_source_dir}" echo "Binary directory: ${cmake_binary_dir}" echo "Prefix directory: ${cmake_prefix_dir}" echo "System: ${cmake_system}" if [ "x${cmake_parallel_make}" != "x" ]; then echo "Doing parallel make: ${cmake_parallel_make}" fi echo "" fi echo "---------------------------------------------" # Get CMake version echo "`cmake_version_display`" # Check for in-source build cmake_in_source_build= if [ -f "${cmake_binary_dir}/Source/cmake.cxx" -a \ -f "${cmake_binary_dir}/Source/cmake.h" ]; then if [ -n "${cmake_verbose}" ]; then echo "Warning: This is an in-source build" fi cmake_in_source_build=TRUE fi # If this is not an in-source build, then Bootstrap stuff should not exist. if [ -z "${cmake_in_source_build}" ]; then # Did somebody bootstrap in the source tree? if [ -d "${cmake_source_dir}/Bootstrap${_cmk}" ]; then cmake_error 10 "Found directory \"${cmake_source_dir}/Bootstrap${_cmk}\". Looks like somebody did bootstrap CMake in the source tree, but now you are trying to do bootstrap in the binary tree. Please remove Bootstrap${_cmk} directory from the source tree." fi # Is there a cache in the source tree? for cmake_problematic_file in ${CMAKE_PROBLEMATIC_FILES}; do if [ -f "${cmake_source_dir}/${cmake_problematic_file}" ]; then cmake_error 10 "Found \"${cmake_source_dir}/${cmake_problematic_file}\". Looks like somebody tried to build CMake in the source tree, but now you are trying to do bootstrap in the binary tree. Please remove \"${cmake_problematic_file}\" from the source tree." fi done fi # Make bootstrap directory [ -d "${cmake_bootstrap_dir}" ] || mkdir "${cmake_bootstrap_dir}" if [ ! -d "${cmake_bootstrap_dir}" ]; then cmake_error 3 "Cannot create directory ${cmake_bootstrap_dir} to bootstrap CMake." fi cd "${cmake_bootstrap_dir}" [ -d "cmsys" ] || mkdir "cmsys" if [ ! -d "cmsys" ]; then cmake_error 4 "Cannot create directory ${cmake_bootstrap_dir}/cmsys" fi # Delete all the bootstrap files rm -f "${cmake_bootstrap_dir}/cmake_bootstrap.log" rm -f "${cmake_bootstrap_dir}/cmConfigure.h${_tmp}" rm -f "${cmake_bootstrap_dir}/cmVersionConfig.h${_tmp}" # If exist compiler flags, set them cmake_c_flags=${CFLAGS} cmake_cxx_flags=${CXXFLAGS} cmake_ld_flags=${LDFLAGS} # Add Cygwin-specific flags if ${cmake_system_cygwin}; then cmake_ld_flags="${LDFLAGS} -Wl,--enable-auto-import" fi # Add CoreFoundation framework on Darwin if ${cmake_system_darwin}; then cmake_ld_flags="${LDFLAGS} -framework CoreFoundation" fi # Add BeOS toolkits... if ${cmake_system_beos}; then cmake_ld_flags="${LDFLAGS} -lroot -lbe" fi # Add Haiku toolkits... if ${cmake_system_haiku}; then cmake_ld_flags="${LDFLAGS} -lroot -lbe" fi # Workaround for short jump tables on PA-RISC if ${cmake_machine_parisc}; then if ${cmake_c_compiler_is_gnu}; then cmake_c_flags="${CFLAGS} -mlong-calls" fi if ${cmake_cxx_compiler_is_gnu}; then cmake_cxx_flags="${CXXFLAGS} -mlong-calls" fi fi #----------------------------------------------------------------------------- # Detect known toolchains on some platforms. cmake_toolchains='' case "${cmake_system}" in *AIX*) cmake_toolchains='XL GNU' ;; *CYGWIN*) cmake_toolchains='GNU' ;; *Darwin*) cmake_toolchains='GNU Clang' ;; *Linux*) cmake_toolchains='GNU Clang XL PGI PathScale' ;; *MINGW*) cmake_toolchains='GNU' ;; esac # Toolchain compiler name table. cmake_toolchain_Clang_CC='clang' cmake_toolchain_Clang_CXX='clang++' cmake_toolchain_GNU_CC='gcc' cmake_toolchain_GNU_CXX='g++' cmake_toolchain_PGI_CC='pgcc' cmake_toolchain_PGI_CXX='pgCC' cmake_toolchain_PathScale_CC='pathcc' cmake_toolchain_PathScale_CXX='pathCC' cmake_toolchain_XL_CC='xlc' cmake_toolchain_XL_CXX='xlC' cmake_toolchain_try() { tc="$1" TMPFILE=`cmake_tmp_file` eval "tc_CC=\${cmake_toolchain_${tc}_CC}" echo 'int main() { return 0; }' > "${TMPFILE}.c" cmake_try_run "$tc_CC" "" "${TMPFILE}.c" >> cmake_bootstrap.log 2>&1 tc_result_CC="$?" rm -f "${TMPFILE}.c" test "${tc_result_CC}" = "0" || return 1 eval "tc_CXX=\${cmake_toolchain_${tc}_CXX}" echo 'int main() { return 0; }' > "${TMPFILE}.cpp" cmake_try_run "$tc_CXX" "" "${TMPFILE}.cpp" >> cmake_bootstrap.log 2>&1 tc_result_CXX="$?" rm -f "${TMPFILE}.cpp" test "${tc_result_CXX}" = "0" || return 1 cmake_toolchain="$tc" } cmake_toolchain_detect() { cmake_toolchain= for tc in ${cmake_toolchains}; do echo "Checking for $tc toolchain" >> cmake_bootstrap.log 2>&1 cmake_toolchain_try "$tc" && echo "Found $tc toolchain" && break done } if [ -z "${CC}" -a -z "${CXX}" ]; then cmake_toolchain_detect fi #----------------------------------------------------------------------------- # Test C compiler cmake_c_compiler= # If CC is set, use that for compiler, otherwise use list of known compilers if [ -n "${cmake_toolchain}" ]; then eval cmake_c_compilers="\${cmake_toolchain_${cmake_toolchain}_CC}" elif [ -n "${CC}" ]; then cmake_c_compilers="${CC}" else cmake_c_compilers="${CMAKE_KNOWN_C_COMPILERS}" fi # Check if C compiler works TMPFILE=`cmake_tmp_file` echo ' #ifdef __cplusplus # error "The CMAKE_C_COMPILER is set to a C++ compiler" #endif #include<stdio.h> #if defined(__CLASSIC_C__) int main(argc, argv) int argc; char* argv[]; #else int main(int argc, char* argv[]) #endif { printf("%d%c", (argv != 0), (char)0x0a); return argc-1; } ' > "${TMPFILE}.c" for a in ${cmake_c_compilers}; do if [ -z "${cmake_c_compiler}" ] && \ cmake_try_run "${a}" "${cmake_c_flags}" "${TMPFILE}.c" >> cmake_bootstrap.log 2>&1; then cmake_c_compiler="${a}" fi done rm -f "${TMPFILE}.c" if [ -z "${cmake_c_compiler}" ]; then cmake_error 6 "Cannot find appropriate C compiler on this system. Please specify one using environment variable CC. See cmake_bootstrap.log for compilers attempted. " fi echo "C compiler on this system is: ${cmake_c_compiler} ${cmake_c_flags}" #----------------------------------------------------------------------------- # Test CXX compiler cmake_cxx_compiler= # On Mac OSX, CC is the same as cc, so make sure not to try CC as c++ compiler. # If CC is set, use that for compiler, otherwise use list of known compilers if [ -n "${cmake_toolchain}" ]; then eval cmake_cxx_compilers="\${cmake_toolchain_${cmake_toolchain}_CXX}" elif [ -n "${CXX}" ]; then cmake_cxx_compilers="${CXX}" else cmake_cxx_compilers="${CMAKE_KNOWN_CXX_COMPILERS}" fi # Check if C++ compiler works TMPFILE=`cmake_tmp_file` echo ' #if defined(TEST1) # include <iostream> #else # include <iostream.h> #endif class NeedCXX { public: NeedCXX() { this->Foo = 1; } int GetFoo() { return this->Foo; } private: int Foo; }; int main() { NeedCXX c; #ifdef TEST3 cout << c.GetFoo() << endl; #else std::cout << c.GetFoo() << std::endl; #endif return 0; } ' > "${TMPFILE}.cxx" for a in ${cmake_cxx_compilers}; do for b in 1 2 3; do if [ -z "${cmake_cxx_compiler}" ] && \ cmake_try_run "${a}" "${cmake_cxx_flags} -DTEST${b}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then cmake_cxx_compiler="${a}" fi done done rm -f "${TMPFILE}.cxx" if [ -z "${cmake_cxx_compiler}" ]; then cmake_error 7 "Cannot find appropriate C++ compiler on this system. Please specify one using environment variable CXX. See cmake_bootstrap.log for compilers attempted." fi echo "C++ compiler on this system is: ${cmake_cxx_compiler} ${cmake_cxx_flags}" #----------------------------------------------------------------------------- # Test Make cmake_make_processor= cmake_make_flags= # If MAKE is set, use that for make processor, otherwise use list of known make if [ -n "${MAKE}" ]; then cmake_make_processors="${MAKE}" else cmake_make_processors="${CMAKE_KNOWN_MAKE_PROCESSORS}" fi TMPFILE="`cmake_tmp_file`_dir" rm -rf "${cmake_bootstrap_dir}/${TMPFILE}" mkdir "${cmake_bootstrap_dir}/${TMPFILE}" cd "${cmake_bootstrap_dir}/${TMPFILE}" echo ' test: test.c "'"${cmake_c_compiler}"'" '"${cmake_ld_flags} ${cmake_c_flags}"' -o test test.c '>"Makefile" echo ' #include <stdio.h> int main(){ printf("1%c", (char)0x0a); return 0; } ' > "test.c" cmake_original_make_flags="${cmake_make_flags}" if [ "x${cmake_parallel_make}" != "x" ]; then cmake_make_flags="${cmake_make_flags} -j ${cmake_parallel_make}" fi for a in ${cmake_make_processors}; do if [ -z "${cmake_make_processor}" ] && cmake_try_make "${a}" "${cmake_make_flags}" >> ../cmake_bootstrap.log 2>&1; then cmake_make_processor="${a}" fi done cmake_full_make_flags="${cmake_make_flags}" if [ "x${cmake_original_make_flags}" != "x${cmake_make_flags}" ]; then if [ -z "${cmake_make_processor}" ]; then cmake_make_flags="${cmake_original_make_flags}" for a in ${cmake_make_processors}; do if [ -z "${cmake_make_processor}" ] && cmake_try_make "${a}" "${cmake_make_flags}" >> ../cmake_bootstrap.log 2>&1; then cmake_make_processor="${a}" fi done fi fi cd "${cmake_bootstrap_dir}" if [ -z "${cmake_make_processor}" ]; then cmake_error 8 "Cannot find appropriate Makefile processor on this system. Please specify one using environment variable MAKE." fi rm -rf "${cmake_bootstrap_dir}/${TMPFILE}" echo "Makefile processor on this system is: ${cmake_make_processor}" if [ "x${cmake_full_make_flags}" != "x${cmake_make_flags}" ]; then echo "---------------------------------------------" echo "Makefile processor ${cmake_make_processor} does not support parallel build" echo "---------------------------------------------" fi # Ok, we have CC, CXX, and MAKE. # Test C++ compiler features # Are we GCC? TMPFILE=`cmake_tmp_file` echo ' #if defined(__GNUC__) && !defined(__INTEL_COMPILER) #include <iostream> int main() { std::cout << "This is GNU" << std::endl; return 0;} #endif ' > ${TMPFILE}.cxx cmake_cxx_compiler_is_gnu=0 if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then cmake_cxx_compiler_is_gnu=1 fi if [ "x${cmake_cxx_compiler_is_gnu}" = "x1" ]; then echo "${cmake_cxx_compiler} is GNU compiler" else echo "${cmake_cxx_compiler} is not GNU compiler" fi rm -f "${TMPFILE}.cxx" if [ "x${cmake_cxx_compiler_is_gnu}" != "x1" ]; then # Check for non-GNU compiler flags # If we are on IRIX, check for -LANG:std cmake_test_flags="-LANG:std" if [ "x${cmake_system}" = "xIRIX64" ]; then TMPFILE=`cmake_tmp_file` echo ' #include <iostream> int main() { std::cout << "No need for '"${cmake_test_flags}"'" << std::endl; return 0;} ' > ${TMPFILE}.cxx cmake_need_lang_std=0 if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then : else if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} ${cmake_test_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then cmake_need_lang_std=1 fi fi if [ "x${cmake_need_lang_std}" = "x1" ]; then cmake_cxx_flags="${cmake_cxx_flags} ${cmake_test_flags}" echo "${cmake_cxx_compiler} needs ${cmake_test_flags}" else echo "${cmake_cxx_compiler} does not need ${cmake_test_flags}" fi rm -f "${TMPFILE}.cxx" fi cmake_test_flags= # If we are on OSF, check for -timplicit_local -no_implicit_include cmake_test_flags="-timplicit_local -no_implicit_include" if [ "x${cmake_system}" = "xOSF1" ]; then TMPFILE=`cmake_tmp_file` echo ' #include <iostream> int main() { std::cout << "We need '"${cmake_test_flags}"'" << std::endl; return 0;} ' > ${TMPFILE}.cxx cmake_need_flags=1 if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} ${cmake_test_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then : else cmake_need_flags=0 fi if [ "x${cmake_need_flags}" = "x1" ]; then cmake_cxx_flags="${cmake_cxx_flags} ${cmake_test_flags}" echo "${cmake_cxx_compiler} needs ${cmake_test_flags}" else echo "${cmake_cxx_compiler} does not need ${cmake_test_flags}" fi rm -f "${TMPFILE}.cxx" fi cmake_test_flags= # If we are on OSF, check for -std strict_ansi -nopure_cname cmake_test_flags="-std strict_ansi -nopure_cname" if [ "x${cmake_system}" = "xOSF1" ]; then TMPFILE=`cmake_tmp_file` echo ' #include <iostream> int main() { std::cout << "We need '"${cmake_test_flags}"'" << std::endl; return 0;} ' > ${TMPFILE}.cxx cmake_need_flags=1 if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} ${cmake_test_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then : else cmake_need_flags=0 fi if [ "x${cmake_need_flags}" = "x1" ]; then cmake_cxx_flags="${cmake_cxx_flags} ${cmake_test_flags}" echo "${cmake_cxx_compiler} needs ${cmake_test_flags}" else echo "${cmake_cxx_compiler} does not need ${cmake_test_flags}" fi rm -f "${TMPFILE}.cxx" fi cmake_test_flags= # If we are on HP-UX, check for -Ae for the C compiler. if [ "x${cmake_system}" = "xHP-UX" ]; then cmake_test_flags="-Ae" TMPFILE=`cmake_tmp_file` echo ' int main(int argc, char** argv) { (void)argc; (void)argv; return 0; } ' > ${TMPFILE}.c cmake_need_Ae=0 if cmake_try_run "${cmake_c_compiler}" "${cmake_c_flags}" "${TMPFILE}.c" >> cmake_bootstrap.log 2>&1; then : else if cmake_try_run "${cmake_c_compiler}" \ "${cmake_c_flags} ${cmake_test_flags}" "${TMPFILE}.c" >> cmake_bootstrap.log 2>&1; then cmake_need_Ae=1 fi fi if [ "x${cmake_need_Ae}" = "x1" ]; then cmake_c_flags="${cmake_c_flags} ${cmake_test_flags}" echo "${cmake_c_compiler} needs ${cmake_test_flags}" else echo "${cmake_c_compiler} does not need ${cmake_test_flags}" fi rm -f "${TMPFILE}.c" echo ' #include <iostream> int main(int argc, char** argv) { for(int i=0; i < 1; ++i); for(int i=0; i < 1; ++i); (void)argc; (void)argv; return 0; } ' > ${TMPFILE}.cxx cmake_need_AAstd98=0 cmake_test_flags="-AA +hpxstd98" if cmake_try_run "${cmake_cxx_compiler}" "${cmake_cxx_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then : else if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} ${cmake_test_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then cmake_need_AAstd98=1 fi fi if [ "x${cmake_need_AAstd98}" = "x1" ]; then cmake_cxx_flags="${cmake_cxx_flags} ${cmake_test_flags}" echo "${cmake_cxx_compiler} needs ${cmake_test_flags}" else echo "${cmake_cxx_compiler} does not need ${cmake_test_flags}" fi fi cmake_test_flags= fi if [ "x${cmake_cxx_compiler_is_gnu}" != "x1" ]; then # Are we SolarisStudio? TMPFILE=`cmake_tmp_file` echo ' #if defined(__SUNPRO_CC) #include <iostream> int main() { std::cout << "This is SolarisStudio" << std::endl; return 0;} #endif ' > ${TMPFILE}.cxx cmake_cxx_compiler_is_solarisstudio=0 if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} " "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then cmake_cxx_compiler_is_solarisstudio=1 fi if [ "x${cmake_cxx_compiler_is_solarisstudio}" = "x1" ]; then echo "${cmake_cxx_compiler} is SolarisStudio compiler" else echo "${cmake_cxx_compiler} is not SolarisStudio compiler" fi rm -f "${TMPFILE}.cxx" if [ "x${cmake_cxx_compiler_is_solarisstudio}" = "x1" ]; then cmake_cxx_flags="${cmake_cxx_flags} -library=stlport4" fi fi # Test for kwsys features KWSYS_NAME_IS_KWSYS=0 KWSYS_BUILD_SHARED=0 KWSYS_LFS_AVAILABLE=0 KWSYS_LFS_REQUESTED=0 KWSYS_STL_HAS_WSTRING=0 KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H=0 KWSYS_CXX_HAS_SETENV=0 KWSYS_CXX_HAS_UNSETENV=0 KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H=0 KWSYS_CXX_HAS_UTIMENSAT=0 KWSYS_CXX_HAS_UTIMES=0 if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_SETENV" \ "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then KWSYS_CXX_HAS_SETENV=1 echo "${cmake_cxx_compiler} has setenv" else echo "${cmake_cxx_compiler} does not have setenv" fi if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_UNSETENV" \ "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then KWSYS_CXX_HAS_UNSETENV=1 echo "${cmake_cxx_compiler} has unsetenv" else echo "${cmake_cxx_compiler} does not have unsetenv" fi if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H" \ "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H=1 echo "${cmake_cxx_compiler} has environ in stdlib.h" else echo "${cmake_cxx_compiler} does not have environ in stdlib.h" fi if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_WSTRING" \ "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then KWSYS_STL_HAS_WSTRING=1 echo "${cmake_cxx_compiler} has stl wstring" else echo "${cmake_cxx_compiler} does not have stl wstring" fi if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H" \ "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H=1 echo "${cmake_cxx_compiler} has <ext/stdio_filebuf.h>" else echo "${cmake_cxx_compiler} does not have <ext/stdio_filebuf.h>" fi # Just to be safe, let us store compiler and flags to the header file cmake_bootstrap_version='$Revision$' cmake_compiler_settings_comment="/* * Generated by ${cmake_source_dir}/bootstrap * Version: ${cmake_bootstrap_version} * * Source directory: ${cmake_source_dir} * Binary directory: ${cmake_bootstrap_dir} * * C compiler: ${cmake_c_compiler} * C flags: ${cmake_c_flags} * * C++ compiler: ${cmake_cxx_compiler} * C++ flags: ${cmake_cxx_flags} * * Make: ${cmake_make_processor} * * Sources: * ${CMAKE_CXX_SOURCES} ${CMAKE_C_SOURCES} * kwSys Sources: * ${KWSYS_CXX_SOURCES} ${KWSYS_C_SOURCES} */ " cmake_report cmConfigure.h${_tmp} "${cmake_compiler_settings_comment}" # When bootstrapping on MinGW with MSYS we must convert the source # directory to a windows path. if ${cmake_system_mingw}; then CMAKE_BOOTSTRAP_SOURCE_DIR=`cd "${cmake_source_dir}"; pwd -W` CMAKE_BOOTSTRAP_BINARY_DIR=`cd "${cmake_binary_dir}"; pwd -W` else CMAKE_BOOTSTRAP_SOURCE_DIR="${cmake_source_dir}" CMAKE_BOOTSTRAP_BINARY_DIR="${cmake_binary_dir}" fi # Write CMake version cmake_report cmVersionConfig.h${_tmp} "#define CMake_VERSION_MAJOR ${cmake_version_major}" cmake_report cmVersionConfig.h${_tmp} "#define CMake_VERSION_MINOR ${cmake_version_minor}" cmake_report cmVersionConfig.h${_tmp} "#define CMake_VERSION_PATCH ${cmake_version_patch}" cmake_report cmVersionConfig.h${_tmp} "#define CMake_VERSION \"${cmake_version}\"" cmake_report cmConfigure.h${_tmp} "#define CMAKE_BOOTSTRAP_SOURCE_DIR \"${CMAKE_BOOTSTRAP_SOURCE_DIR}\"" cmake_report cmConfigure.h${_tmp} "#define CMAKE_BOOTSTRAP_BINARY_DIR \"${CMAKE_BOOTSTRAP_BINARY_DIR}\"" cmake_report cmConfigure.h${_tmp} "#define CMAKE_BIN_DIR \"/bootstrap-not-insalled\"" cmake_report cmConfigure.h${_tmp} "#define CMAKE_DATA_DIR \"/bootstrap-not-insalled\"" cmake_report cmConfigure.h${_tmp} "#define CMAKE_BOOTSTRAP" cmake_report cmConfigure.h${_tmp} "#define CM_NULLPTR 0" cmake_report cmConfigure.h${_tmp} "#define CM_OVERRIDE" # Regenerate configured headers for h in Configure VersionConfig; do if "${_diff}" cm${h}.h cm${h}.h${_tmp} > /dev/null 2> /dev/null; then rm -f cm${h}.h${_tmp} else mv -f cm${h}.h${_tmp} cm${h}.h fi done # Prepare KWSYS cmake_kwsys_config_replace_string \ "${cmake_source_dir}/Source/kwsys/Configure.hxx.in" \ "${cmake_bootstrap_dir}/cmsys/Configure.hxx" \ "${cmake_compiler_settings_comment}" cmake_kwsys_config_replace_string \ "${cmake_source_dir}/Source/kwsys/Configure.h.in" \ "${cmake_bootstrap_dir}/cmsys/Configure.h" \ "${cmake_compiler_settings_comment}" for a in ${KWSYS_FILES}; do cmake_replace_string "${cmake_source_dir}/Source/kwsys/${a}.in" \ "${cmake_bootstrap_dir}/cmsys/${a}" KWSYS_NAMESPACE cmsys done cmake_generate_file "${cmake_bootstrap_dir}/cmThirdParty.h" "" # Generate Makefile dep="cmConfigure.h cmsys/*.hxx cmsys/*.h `cmake_escape \"${cmake_source_dir}\"`/Source/*.h" objs="" for a in ${CMAKE_CXX_SOURCES} ${CMAKE_C_SOURCES} ${KWSYS_CXX_SOURCES} ${KWSYS_C_SOURCES}; do objs="${objs} ${a}.o" done if [ "x${cmake_ansi_cxx_flags}" != "x" ]; then cmake_cxx_flags="${cmake_ansi_cxx_flags} ${cmake_cxx_flags}" fi if [ "x${cmake_c_flags}" != "x" ]; then cmake_c_flags="${cmake_c_flags} " fi if [ "x${cmake_cxx_flags}" != "x" ]; then cmake_cxx_flags="${cmake_cxx_flags} " fi cmake_c_flags_String="-DKWSYS_STRING_C" if ${cmake_system_mingw}; then cmake_c_flags_EncodingC="-DKWSYS_ENCODING_DEFAULT_CODEPAGE=CP_ACP" cmake_cxx_flags_cmProcessOutput="${cmake_c_flags_EncodingC}" fi cmake_cxx_flags_SystemTools=" -DKWSYS_CXX_HAS_SETENV=${KWSYS_CXX_HAS_SETENV} -DKWSYS_CXX_HAS_UNSETENV=${KWSYS_CXX_HAS_UNSETENV} -DKWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H=${KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H} -DKWSYS_CXX_HAS_UTIMENSAT=${KWSYS_CXX_HAS_UTIMENSAT} -DKWSYS_CXX_HAS_UTIMES=${KWSYS_CXX_HAS_UTIMES} " cmake_c_flags="${cmake_c_flags}-I`cmake_escape \"${cmake_bootstrap_dir}\"` -I`cmake_escape \"${cmake_source_dir}/Source\"` \ -I`cmake_escape \"${cmake_source_dir}/Utilities\"`" cmake_cxx_flags="${cmake_cxx_flags} -I`cmake_escape \"${cmake_bootstrap_dir}\"` -I`cmake_escape \"${cmake_source_dir}/Source\"` \ -I`cmake_escape \"${cmake_source_dir}/Utilities\"`" echo "cmake: ${objs}" > "${cmake_bootstrap_dir}/Makefile" echo " ${cmake_cxx_compiler} ${cmake_ld_flags} ${cmake_cxx_flags} ${objs} -o cmake" >> "${cmake_bootstrap_dir}/Makefile" for a in ${CMAKE_CXX_SOURCES}; do src=`cmake_escape "${cmake_source_dir}/Source/${a}.cxx"` src_flags=`eval echo \\${cmake_cxx_flags_\${a}}` echo "${a}.o : ${src} ${dep}" >> "${cmake_bootstrap_dir}/Makefile" echo " ${cmake_cxx_compiler} ${cmake_cxx_flags} ${src_flags} -c ${src} -o ${a}.o" >> "${cmake_bootstrap_dir}/Makefile" done echo "cmBootstrapCommands1.o : $cmBootstrapCommands1Deps" >> "${cmake_bootstrap_dir}/Makefile" echo "cmBootstrapCommands2.o : $cmBootstrapCommands2Deps" >> "${cmake_bootstrap_dir}/Makefile" for a in ${CMAKE_C_SOURCES}; do src=`cmake_escape "${cmake_source_dir}/Source/${a}.c"` echo "${a}.o : ${src} ${dep}" >> "${cmake_bootstrap_dir}/Makefile" echo " ${cmake_c_compiler} ${cmake_c_flags} -c ${src} -o ${a}.o" >> "${cmake_bootstrap_dir}/Makefile" done for a in ${KWSYS_C_SOURCES}; do src=`cmake_escape "${cmake_source_dir}/Source/kwsys/${a}.c"` src_flags=`eval echo \\${cmake_c_flags_\${a}}` echo "${a}.o : ${src} ${dep}" >> "${cmake_bootstrap_dir}/Makefile" echo " ${cmake_c_compiler} ${cmake_c_flags} -DKWSYS_NAMESPACE=cmsys ${src_flags} -c ${src} -o ${a}.o" >> "${cmake_bootstrap_dir}/Makefile" done for a in ${KWSYS_CXX_SOURCES}; do src=`cmake_escape "${cmake_source_dir}/Source/kwsys/${a}.cxx"` src_flags=`eval echo \\${cmake_cxx_flags_\${a}}` echo "${a}.o : ${src} ${dep}" >> "${cmake_bootstrap_dir}/Makefile" echo " ${cmake_cxx_compiler} ${cmake_cxx_flags} -DKWSYS_NAMESPACE=cmsys ${src_flags} -c ${src} -o ${a}.o" >> "${cmake_bootstrap_dir}/Makefile" done echo ' rebuild_cache: cd "${cmake_binary_dir}" && "${cmake_source_dir}/bootstrap" ' >> "${cmake_bootstrap_dir}/Makefile" # Write our default settings to Bootstrap${_cmk}/InitialCacheFlags.cmake. echo ' # Generated by '"${cmake_source_dir}"'/bootstrap # Default cmake settings. These may be overridden any settings below. set (CMAKE_INSTALL_PREFIX "'"${cmake_prefix_dir}"'" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) set (CMAKE_DOC_DIR "'"${cmake_doc_dir}"'" CACHE PATH "Install location for documentation (relative to prefix)." FORCE) set (CMAKE_MAN_DIR "'"${cmake_man_dir}"'" CACHE PATH "Install location for man pages (relative to prefix)." FORCE) set (CMAKE_BIN_DIR "'"${cmake_bin_dir}"'" CACHE PATH "Install location for binaries (relative to prefix)." FORCE) set (CMAKE_DATA_DIR "'"${cmake_data_dir}"'" CACHE PATH "Install location for data (relative to prefix)." FORCE) set (CMAKE_XDGDATA_DIR "'"${cmake_xdgdata_dir}"'" CACHE PATH "Install location for XDG specific files (relative to prefix)." FORCE) ' > "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" # Add configuration settings given as command-line options. if [ "x${cmake_bootstrap_qt_gui}" != "x" ]; then echo ' set (BUILD_QtDialog '"${cmake_bootstrap_qt_gui}"' CACHE BOOL "Build Qt dialog for CMake" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_bootstrap_qt_qmake}" != "x" ]; then echo ' set (QT_QMAKE_EXECUTABLE "'"${cmake_bootstrap_qt_qmake}"'" CACHE FILEPATH "Location of Qt qmake" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_bootstrap_server}" != "x" ]; then echo ' set (CMake_ENABLE_SERVER_MODE '"${cmake_bootstrap_server}"' CACHE BOOL "Enable server mode" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_man}" != "x" ]; then echo ' set (SPHINX_MAN "'"${cmake_sphinx_man}"'" CACHE BOOL "Build man pages with Sphinx" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_html}" != "x" ]; then echo ' set (SPHINX_HTML "'"${cmake_sphinx_html}"'" CACHE BOOL "Build html help with Sphinx" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_qthelp}" != "x" ]; then echo ' set (SPHINX_QTHELP "'"${cmake_sphinx_qthelp}"'" CACHE BOOL "Build qch help with Sphinx" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_build}" != "x" ]; then echo ' set (SPHINX_EXECUTABLE "'"${cmake_sphinx_build}"'" CACHE FILEPATH "Location of Qt sphinx-build" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_flags}" != "x" ]; then echo ' set (SPHINX_FLAGS [==['"${cmake_sphinx_flags}"']==] CACHE STRING "Flags to pass to sphinx-build" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi # Add user-specified settings. Handle relative-path case for # specification of cmake_init_file. ( cd "${cmake_binary_dir}" if [ -f "${cmake_init_file}" ]; then cat "${cmake_init_file}" >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi ) echo "---------------------------------------------" # Run make to build bootstrap cmake if [ "x${cmake_parallel_make}" != "x" ]; then ${cmake_make_processor} ${cmake_make_flags} else ${cmake_make_processor} fi RES=$? if [ "${RES}" -ne "0" ]; then cmake_error 9 "Problem while running ${cmake_make_processor}" fi cd "${cmake_binary_dir}" # Set C, CXX, and MAKE environment variables, so that real real cmake will be # build with same compiler and make CC="${cmake_c_compiler}" CXX="${cmake_cxx_compiler}" if [ -n "${cmake_ccache_enabled}" ]; then CC="ccache ${CC}" CXX="ccache ${CXX}" fi MAKE="${cmake_make_processor}" export CC export CXX export MAKE # Run bootstrap CMake to configure real CMake cmake_options="-DCMAKE_BOOTSTRAP=1" if [ -n "${cmake_verbose}" ]; then cmake_options="${cmake_options} -DCMAKE_VERBOSE_MAKEFILE=1" fi "${cmake_bootstrap_dir}/cmake" "${cmake_source_dir}" "-C${cmake_bootstrap_dir}/InitialCacheFlags.cmake" "-G${cmake_bootstrap_generator}" ${cmake_options} ${cmake_bootstrap_system_libs} "$@" RES=$? if [ "${RES}" -ne "0" ]; then cmake_error 11 "Problem while running initial CMake" fi echo "---------------------------------------------" # And we are done. Now just run make echo "CMake has bootstrapped. Now run ${cmake_make_processor}." </code></pre></td></tr></table> </div> <!-- class=content --> <div class='footer'>generated by <a href='http://git.zx2c4.com/cgit/about/'>cgit v0.12</a> at 2025-03-09 05:39:32 (GMT)</div> </div> <!-- id=cgit --> </body> </html>