Compare commits

...
Author SHA1 Message Date
zookeeper 0c5a72a5d3 Trunk sync r11329, with some cosmetic changes to the EFF subdirs code to conform with recent bmpman changes.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11330 387891d4-d844-0410-90c0-e4c51a9137d3
2015-05-03 19:07:22 +10:00
zookeeper e1591a7be1 Trunk sync r11296.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11297 387891d4-d844-0410-90c0-e4c51a9137d3
2015-04-11 09:12:26 +10:00
zookeeper e64299e533 Added a hud_gauges.tbl flag for controlling whether ETS gauges should disappear when ETS is disabled.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11287 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-23 17:51:38 +10:00
zookeeper fa3506f5a5 Fixed "get-ets-values" to "get-ets-value" in the help string.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11283 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-19 16:40:11 +10:00
zookeeper bd200d631d Trunk sync r11277.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11278 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-08 12:46:17 +10:00
zookeeper 225c5ccd90 Made it possible to name control presets, and made controls config display the current preset's name if there are multiple to choose from.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11277 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-08 12:46:16 +10:00
zookeeper 2958cb7ece Possibly fixed Mantis #2436: Mouse controls ignore the axis binds.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11275 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-07 09:39:20 +10:00
zookeeper affd2a40c6 Added bay arrive/depart speed multipliers to +Path Metadata.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11271 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-04 22:42:57 +10:00
zookeeper 591026084d Added a "Show Destroyed Subsystems" flag to ship lab for viewing -destroyed submodels.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11269 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-03 16:22:45 +10:00
zookeeper acf1f160d9 Fixed +Spread From LOD not working right.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11268 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-03 16:22:45 +10:00
zookeeper 7ec3d3f1ad Added $Collision LOD ship table property, for using a LOD for collision detection.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11267 387891d4-d844-0410-90c0-e4c51a9137d3
2015-03-03 16:22:45 +10:00
zookeeper 6ea9d8d1f0 Typo-fixed and clarified some SEXP argument descriptions.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11259 387891d4-d844-0410-90c0-e4c51a9137d3
2015-02-28 19:55:33 +10:00
chief1983 758514af77 Trunk sync r11257.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11258 387891d4-d844-0410-90c0-e4c51a9137d3
2015-02-24 18:36:28 +10:00
zookeeper d178d36ad2 Made the firepoint HUD gauge light up only the firepoints which will fire next, if "dynamic primary linking" ship flag or "cycle" weapon flag is used.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11256 387891d4-d844-0410-90c0-e4c51a9137d3
2015-02-22 10:30:11 +10:00
zookeeper 4e0cb1f5f5 Trunk sync r11236.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11237 387891d4-d844-0410-90c0-e4c51a9137d3
2015-02-03 17:08:52 +10:00
zookeeper 4b06b9730c Avoid loading the anchor ship model multiple times when resolving path masks.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11235 387891d4-d844-0410-90c0-e4c51a9137d3
2015-02-03 17:08:52 +10:00
zookeeper 6858371ebc Set the Sender hook variable to nil in On Message Received hooks if message not coming from a ship.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11232 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-27 18:27:35 +10:00
zookeeper f28082d241 Trunk sync r11230.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11231 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-27 18:27:35 +10:00
chief1983 1c500458fa Trunk sync r11222.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11224 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-24 09:22:26 +10:00
zookeeper 876360c5fb Fixed an off-by-one mistake.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11219 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-18 12:27:54 +10:00
zookeeper 489867c0dd Fixed game_settings.tbl default volume controls not working when creating a new but not first pilot.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11217 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-17 08:34:25 +10:00
zookeeper 32dee2889a Trunk sync r11215.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11216 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-15 09:59:24 +10:00
zookeeper 52c537d7b8 Probably fixed a bug with the next/prev subsystem targeting keys not working if the target only has one subsystem.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11209 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-15 09:59:24 +10:00
zookeeper 90c868b8f5 Trunk sync r11205.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11207 387891d4-d844-0410-90c0-e4c51a9137d3
2015-01-15 09:59:24 +10:00
zookeeper 9b590d6f2c Trunk sync r11199.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11200 387891d4-d844-0410-90c0-e4c51a9137d3
2014-12-20 11:54:45 +10:00
zookeeper e69e050412 Avoid running On Frame hooks during all popups, not only the "Quit mission" popup.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11199 387891d4-d844-0410-90c0-e4c51a9137d3
2014-12-20 11:54:45 +10:00
zookeeper 880a2cbf26 Trunk sync r11193.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11194 387891d4-d844-0410-90c0-e4c51a9137d3
2014-12-11 18:18:20 +10:00
zookeeper 8b55964a5c Trunk sync r11163.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11164 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-30 13:23:53 +10:00
zookeeper 10b6640afd Trunk sync r11161.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11162 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-29 18:46:59 +10:00
zookeeper ba057dc137 Fix various issues with $Acceleration Time.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11100 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-03 18:18:39 +10:00
chief1983 eaafbabdaf Trunk sync r11090.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11091 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-29 12:17:57 +10:00
zookeeper 3a3ca4e206 Fixed MAX_SHIP_FLAG_NAMES having the wrong value.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11088 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-27 18:19:07 +10:00
zookeeper 07a7ad3461 Trunk sync r11085.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11086 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-25 19:37:39 +10:00
zookeeper da166f35ba Fixed weapon particle spews not taking launch velocity properly into account if $Acceleration Time is used.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11085 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-25 19:37:28 +10:00
zookeeper f73b142071 Trunk sync r11070.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11071 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:17 +10:00
zookeeper ce5bd90a7f Fixed compilation issue stemming from trunk r10964.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10994 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:17 +10:00
zookeeper 1f7203ec0f Reverted (r10896) Default_min_draw_distance back to 1 due to z-order glitches it somehow caused.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10993 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:17 +10:00
zookeeper c6fe99a1cc Added new $Subdir: <bool> .eff file property, allowing the animation frames to be located in a subdirectory.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10992 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:17 +10:00
zookeeper 60d8ded285 Trunk sync r10990.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10991 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:17 +10:00
zookeeper 5f6089df4f Trunk sync r10959.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10960 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:16 +10:00
zookeeper c2ab1f4edb Trunk sync r10933.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10934 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:16 +10:00
zookeeper 3681add767 Fixed a screwup in a trunk sync.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10917 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:16 +10:00
zookeeper 32d1af2c71 Trunk sync r10900.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10905 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:16 +10:00
zookeeper 66fb035b2c Decreased minimum draw distance from 1 to 0.1, and maximum draw distance from 1e10 to 10,000,000.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10896 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:16 +10:00
zookeeper a667d1f635 Trunk sync r10794.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10795 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:16 +10:00
zookeeper 8f3cc556b7 Fixed crash due to an improperly placed if, introduced in r10729.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10790 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper b8b652874c Fixed $Thruster Glow Noise Mult not having effect in the ship lab.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10789 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 87ed7e8d87 Trunk sync r10777.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10778 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 6f262613af Fixed breakage in r10520.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10777 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 245c32285d Fixed breakage introduced in the shield impact effects code.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10776 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 998c530ed0 Bumped the SEXP variable char limit from 32 to 256.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10775 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper ab44765c0d Initialize bay_arrive_speed_mult and bay_depart_speed_mult.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10731 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 707ce957ef Trunk sync r10729.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10730 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 58185d11f4 Don't parse bsp trees of non-colliding submodels.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10729 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 7dfc7bef68 Trunk sync r10629.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10630 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:15 +10:00
zookeeper 835e05c771 Trunk sync r10627.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10628 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:14 +10:00
zookeeper dbde386299 Added a $Model Icon Direction ship table entry for overriding the angle from which ship icons are rendered from.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10612 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:14 +10:00
zookeeper ee6e5aabd7 Added a $Thruster Glow Noise Mult ship table entry for decreasing/increasing the effect of noise applied to the glow radius.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10610 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:14 +10:00
zookeeper 542f20bec1 Added a $Minimum Engine Volume ship table entry for specifying the minimum engine sound volume used when ship is stationary.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10609 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:14 +10:00
zookeeper 8b68aa537b Trunk sync r10605.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10606 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:14 +10:00
zookeeper 6c4ad6aac9 Added a ship flag to disable homing of secondaries fired by the ship.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10605 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:14 +10:00
zookeeper 3e66436edf Fix some stuff apparently missed in trunk syncs.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10560 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:13 +10:00
zookeeper a8fe0f5b61 Trunk sync r10558.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10559 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:13 +10:00
zookeeper eca8d4f2cb Trunk sync r10545.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10546 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:13 +10:00
zookeeper 0a69cc3cf2 Trunk sync r10520.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10521 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:13 +10:00
zookeeper 55f1ed93d2 Reverted r9825 and r9827 for now because they break badly on some corner cases.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10520 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:13 +10:00
zookeeper ed365d1349 Fixed oversight in r10490.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10508 387891d4-d844-0410-90c0-e4c51a9137d3
2014-09-11 19:50:13 +10:00
zookeeper be2f628ac3 Renamed "$Max Shield Recharge Percent" to "$Max Shield Recharge", along with the associated variables.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10490 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:02 +10:00
zookeeper 4d0274b196 Trunk sync r10479.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10480 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:02 +10:00
zookeeper 16e32a0d45 Trunk sync r10471.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10472 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:02 +10:00
zookeeper c85ef1f429 Hopefully increased the arrival/departure paths restriction dialog's width by 100px so even longer path names will be fully visible.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10442 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:02 +10:00
zookeeper 312a601ac6 Trunk sync r10431.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10432 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper 70d5c7998c Ported $Max Shield Recharge Percent from Wanderer branch, with some alterations.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10427 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper bec99b27f1 Added ai_profiles.tbl options to force AI ships flying bay paths to gradually accelerate/decelerate instead of flying the path at max speed.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10422 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper d3d8d82e31 Made $Shield Impact Explosion Radius default to the value of $Impact Explosion Radius.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10421 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper f1495861b9 Ported the surface shield impact effects code from Wanderer branch, making it work on any type of shield and renaming the table entries to $Shield Impact Explosion and $Shield Impact Explosion Radius.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10420 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper 987abad6db Made the Shields handle support non-quadrant shields.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10395 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper 869c021453 Trunk sync r10393.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10394 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper df5746b329 Trunk sync r10314.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10315 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper 8209273f8c Trunk sync r10293.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10294 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:01 +10:00
zookeeper c14a37a826 Added a +Minimum Weapon Span auto spread shield option to control the minimum distance weapons must have traveled before being allowed to hit the shield.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10292 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 308acbe7aa Trunk sync r10290.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10291 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 614d83ff4e Fixed $Velocity Inherit not working right with regards to the AI and lead sights.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10285 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 9de34836d0 Added a ship flag to make detail boxes unaffected by model detail settings.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10284 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 1b224c1361 Fixed $Velocity Inherit and tweaked a few comments.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10283 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 6cccc502a1 Added a new #SOUND SETTINGS section to game_settings.tbl and in it overrides for the default sound, music and voice volume.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10282 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 83a191828a Trunk sync r10280.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10281 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 67026a1066 Trunk sync r10270.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10271 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper b24b08d168 Trunk sync r10255.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10256 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 54b21407f9 Trunk sync r10237.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10238 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 3225f25150 Added the "no homing speed ramp" weapon flag as well as the $Acceleration Time and $Velocity Inherit weapon table entries.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10226 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:19:00 +10:00
zookeeper 55aca9510d Fixed screwup in r10122 which was supposed to fix screwups.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10212 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 1374b52ef4 Trunk sync r10205.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10206 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper ecf99de11b Enabled fighterbay door animations to better define which bay path must be used or not used for the animation to trigger using +sub_type. Fixes the (undocumented) current numbering of fighterbay +sub_types to be 1-based instead of 0-based. Turns the SUBTYPE_CHECK macro to a proper function.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10193 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper af5b6a8c66 Made +delay, +reverse_delay and +acceleration in animation code optional and default to 0.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10191 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 356cddb4ea Trunk sync r10188.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10189 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 14380d293e Trunk sync r10168.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10169 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 2ef033dcdd Fixed a merging screw-up which broke the $Action condition.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10148 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 8255871336 Trunk sync r10141.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10142 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 671f73e9c4 Added missing include.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10134 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 0425f704fa Made model shield points tabling and flag names be more consistent.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10133 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper a734cd64cf Ensure shield hit data gets reset immediately also when changing the player's target via Lua.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10126 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:59 +10:00
zookeeper 7645062496 Model point shields fixes suggested by niffiwan.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10123 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper 9a1b674fce Trunk sync 10121; ought to include things that have slipped through in previous sync attempts.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10122 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper 47b7077520 Some model point shield stuff I had forgotten to commit.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10107 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper 0a64aee4a5 Trunk sync r10092.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10093 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper b5447a8c1f Trunk sync r10052.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10053 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper ecceae93ae Removed the unused Interp_render_sphere_offset variable.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9991 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper 0cfe277247 Made render sphere offsets be relative to the ship instead of the submodel, and implemented a similar $box_offset property for detail boxes.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9990 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper eaa5fd636b Trunk sync r9968.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9969 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper 693cd4f529 Fixed a clang compile error.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9961 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:58 +10:00
zookeeper 7b699aa196 Fixes Mantis 2939: Off-screen direction/distance indicators showing up incorrectly in widescreen mode.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9959 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 1e351eeaf5 Trunk sync r9957.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9958 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper c555ae6dd7 Fix a potential crash by making sure HUD shield data gets initialized as soon as the player targets something.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9956 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 45e81ae0a2 Renamed MAX_SHIELD_SECTIONS to DEFAULT_SHIELD_SECTIONS.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9955 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 3336072f1c Disable shield-related training SEXPs if model shield points are used, because the SEXPs assume default 4-segment shields.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9954 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper af8a5f6de2 Guard against possible out-of-bounds shield quadrant indexing.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9953 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 2e219e9966 Some more netcode fixes for n-segment shields.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9952 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 8992977832 Made network code cope with any number of shield segments.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9951 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 134d7d311d Corrected player to viewer in a comment.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9950 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper eeb2cf35c9 Fixed brokenness in previous commit.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9941 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 1e3d2a91dc Made the targeting box render the target relative to player's eyepoint orientation.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9940 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper dfc6435268 Fixed shield quadrant number getting broken when changing from a point shields ship to a one with standard shields.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9937 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper d5d8ad17f7 Fixed possible crashes related to the eyepoint orientation features.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9936 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper e95554f27a Fixed model point shields not getting updated when changing ship class, and removed the warning about generated shield icons.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9934 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper b8defa5eec Allow shield augmentation controls to be re-mapped for model point shields.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9933 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:57 +10:00
zookeeper 536e3866ef Fixed some messed up merging.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9932 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:56 +10:00
zookeeper 41872f2648 Trunk sync r9930.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9931 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:56 +10:00
zookeeper 1e26052d19 Enabled HUD icons for point shields to function correctly.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9930 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:56 +10:00
zookeeper 6a41b039fc Fixed -misc maps being dependent on LOD and lighting levels.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9928 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:56 +10:00
zookeeper f4eb09eb21 Enabled more than 4 shield points to be used.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9919 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:56 +10:00
zookeeper 948e778975 Added support for a new shield segment system where the placement and area of each segment depends on model-defined points. Needs some more work.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9860 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:56 +10:00
zookeeper 5060c02d95 Maybe helps in fixing the linking error.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9847 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:56 +10:00
zookeeper cd5a95a88e Removed an unnecessary variable initialization.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9845 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:55 +10:00
zookeeper ccab33c02a Trunk sync r9838.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9839 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:55 +10:00
zookeeper 7c731f03fe Slightly streamlined the code for the $Action hook condition.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9838 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:55 +10:00
zookeeper 922f8e7630 Upped the hook condition length limit from 32 to 128 and moved the limit to its own define.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9837 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:55 +10:00
zookeeper d528508ebf Prevented $On Action hooks from being executed more than once per frame.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9836 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:55 +10:00
zookeeper 8c021f0503 Removed some debug messages that accidentally got in.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9835 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:55 +10:00
zookeeper a463d9a58d Trunk sync r9824.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9828 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:55 +10:00
zookeeper 3daa7f58d4 Fixed the submodel LOD finding code to work even when the a,b,c,... letters are in the middle of the name.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9827 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper d6f3811cf7 Forgot to make r9825 actually do what it was supposed to.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9826 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper 797dadc1d7 Rewrote the submodel LOD finding code to be a lot simpler and to also allow LOD0 submodels without the trailing "a".
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9825 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper 1262cc08c7 Added an option to make pitch and yaw axes be determined by eyepoint orientation.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9823 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper 8b42ed0824 Tiny tweaks to auto spread shields.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9793 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper f69f70def8 Trunk sync r9791.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9792 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper 5317c13304 Added a table option to allow auto spread shields to be bypassed from up close.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9790 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper 7ca10c9b5e Forgot this from r9728; makes changing eyepoint orientation affect chase view as well.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9738 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:54 +10:00
zookeeper 139f60e0d4 Trunk sync r9735.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9736 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper c71da021ce Added scripting function to enable/disable tips of the day in mainhall.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9734 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper ceea0202b3 strcmpi->strcmp.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9729 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 53b8bd1797 Made eyepoints match the orientation of their parent submodel.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9728 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper faef780270 Added support for multiple control presets, and for renaming individual binds.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9727 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
chief1983 58a04d32f5 Trunk sync r9720.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9726 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 356d18246e Added a Lua function for drawing offscreen indicators. Includes refactoring of some of HudGaugeOffscreen gauge code to separate the position finding and drawing logic.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9725 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 8f5b27873f Exposing ship orders to Lua, patch by Admiral MS: http://www.hard-light.net/forums/index.php?topic=83818.0
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9724 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 6717395b54 Made is-facing able to check for target objects other than ships.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9723 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 32157fbe57 Worked around what seems to be an underlying problem in keypress checking for shift and alt.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9722 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 561e50e860 Fixed issues in r9702.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9721 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 9f22090ce9 Allowed the center reticle to switch to a different frame when autoaim is active, and enabled sounds to be played when gaining/losing autoaim lock-on.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9707 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 858dc8dedd Exposed a ship's autoaim FOV to Lua and allowed $Autoaim FOV to take floats rather than just ints.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9705 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 4a7f059119 Added scripting function for drawing filled and unfilled arcs and made drawCircle able to draw unfilled circles.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9704 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 393a5ae1a2 Added auto spread shields.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9703 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 0cc3dc9c13 Added $On Action Started and $On Action Stopped scripting hooks as well as an $On Action hook condition.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9702 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:53 +10:00
zookeeper 1993f8bed7 Added a Lua function to check whether a ship is warp-capable.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@9701 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-15 14:18:52 +10:00
Echelon9 90a6702ede Fix Mantis 2896: AddressSanitizer: global-buffer-overflow in hud_lock_reset() hudlock.cpp
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9699 387891d4-d844-0410-90c0-e4c51a9137d3
2013-07-26 08:14:30 +10:00
Goober5000 54875d1de8 fix Mantis #2893 (invalid characters in sexp tokens weren't replaced)
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9698 387891d4-d844-0410-90c0-e4c51a9137d3
2013-07-26 08:14:29 +10:00
Goober5000 4e2ee8bece Mantis #2852: commit the newest version of the patch, based on discussion
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9697 387891d4-d844-0410-90c0-e4c51a9137d3
2013-07-26 08:14:29 +10:00
Goober5000 693448eb99 Mantis #2852: good catch, but I'd rather not modify the damage variable... and also, there's the danger of divide-by-zero which wasn't checked
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9696 387891d4-d844-0410-90c0-e4c51a9137d3
2013-07-26 08:14:29 +10:00
Echelon9 773ada0084 Fix Mantis 2852: AddressSanitizer: global-buffer-overflow in shockwave_move() shockwave.cpp:359
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9695 387891d4-d844-0410-90c0-e4c51a9137d3
2013-07-26 08:14:29 +10:00
The_E b7cd4e3c67 oops, broke something
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9693 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:17 +10:00
The_E f860e040b2 Fix for Mantis 2882: "None" team color setting causes errors. Also fixes a few other oversights.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9692 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:17 +10:00
niffiwan 46796a59c8 Fix for mantis 1326: add & handle "not present" state for red alert ships
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9689 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:17 +10:00
niffiwan 049b3205ef Fix for mantis 2880: handle -1 red alert departed ship indexes
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9688 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:17 +10:00
The_E 658c6c5aa8 From Axem: Patch for Mantis 2870 (hook variable for On Death: scripting hook is not always set correctly)
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9687 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:17 +10:00
karajorma 5708875eda We only need to see this error once in FS2. Ensure that this instance only appears in FRED.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9686 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:17 +10:00
karajorma 856c593a2c Better error reporting for this issue (in order to help track down a Diaspora bug).
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9685 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:17 +10:00
karajorma d1ec691f62 Assign the debris signature correctly.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9684 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
karajorma 99948813c1 Fix for Mantis 1863 (Ships with an arrival cue of true and a delay do not arrive on the standalone). Might possibly fix Mantis 1815 too.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9683 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
niffiwan d04130c453 Fix for mantis 2879: clear/reset *everything* in Campaign struct
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9682 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
niffiwan 194300dc94 Fix for mantis 2864: correctly init message_extra struct
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9681 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Backslash 14aa992f6c Small fix to selection set / multitarget / hotkey wing behavior. If a set is not active and something is targeted that is in a set, pressing THAT set's key will not change targets, but just activate the set.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9680 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
niffiwan c5bdbe268e Fix for mantis 2868: clear all mission completed flags when changing campaigns
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9679 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
niffiwan 793cd89ad3 Fix for mantis 2801 from Mr_Maniac: increase buffer size to correctly handle localisation strings > 1024 chars
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9678 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Echelon9 4cbe3903d7 Fix Mantis 2837: AddressSanitizer: heap-buffer-overflow in sexp_get_damage_caused()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9677 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Goober5000 b9d06a1e58 fix for Mantis #2856 - combine all the has-[un]docked[-delay] sexp functions and make adjustments for the order of ship checks
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9675 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Echelon9 af5928aa70 Fix Mantis 2859: Game crashes if mod is changed with the same pilot in use. From niffiwan.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9673 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Echelon9 3d2c85f623 Fix Mantis 2862: Crash exiting game from command briefing on newly created pilot, caused by double free in cutscenes.cpp
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9672 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Echelon9 9d85779875 Fix Mantis 2819: AddressSanitizer: stack-buffer-overflow in l_File_read_f()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9671 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Zacam ca90ec8e75 Fix for Mantis 0002860: Tostring function for enumerations returns invalid for highest enumeration index From: Admiral MS
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9670 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Zacam 23faeda404 Fix for Mantis 2829: If it doesn't like trying to @param a double stuffed func, then don't. We have the @params defined in the original draw_func_ptr anyway.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9669 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
niffiwan 46a3f5483a Fix for mantis 2802: when restoring last missions loadout, ignore weapons on absent ships Also clear ship weapons & weapon-counts when clearing loadout slots
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9668 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Zacam b2e1f1d211 From z64555; a better version of r9666's Doxygen comments.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9667 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
Zacam c49d1a1e6a Doxygen and clean-up start for making the controls more robust. Doxygen additions: z64555 Tab/Whitespace cleanup: My fault.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9666 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:16 +10:00
The_E b991499620 From Plombo: Make the FXAA shaders conform to the (absolutely braindead, I might add) GLSL specs. Also makes Mesa happy.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9665 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
niffiwan 9c5fd447fc Fix for mantis 2855: fix off-by-one, add negative index check, empty invalid slots & enable mprintfs
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9664 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
niffiwan 504fb153db Revert "Fix for mantis 2802: when restoring last missions loadout, ignore weapons on absent ships" Wrong patch you git!
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9663 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
niffiwan 97d228947a Fix for mantis 2802: when restoring last missions loadout, ignore weapons on absent ships Also clear ship weapons & weapon-counts when clearing loadout slots
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9662 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
m_m d2cc75561d Fix for Mantis 2846: Problems with mission loop animations
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9661 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
The_E cb1f812cef Fix for Mantis 2857: We need to tell generic_anim_load what to load, really. Otherwise this whole exercise is kinda pointless :P
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9660 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
Echelon9 316308cc40 Fix for Mantis 2833: AddressSanitizer: heap-buffer-overflow in get_char_width()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9659 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
niffiwan e67daf2afc Remove a duplicate line in r9657 - thanks to Echelon9 for noticing this
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9658 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
niffiwan 78cb7cc039 Fix mantis 2753: save csg just before mission starts read loadout indexes into int instead of uint & ensure -1 is not used as array index initialise Player_loadout struct during FSO start
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9657 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
Zacam 90151d3e0a Fix for Mantis 2841: From CommanderDJ, Allows FRED to select/set Main Hall by string input, not just integers.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9656 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
Echelon9 74b89d9fc5 Extra logging functionality for BMPMAN. This helped localise the fix in r9654.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9655 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
Echelon9 aa463ca772 Fix for loading of AVIs in BP. As discussed with The_E on IRC, this bug may have had a range of unintended consequences, although not clear why it hasn't been picked up already.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9654 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
Echelon9 fc555177fd Fix Mantis 2850: AddressSanitizer: global-buffer-overflow in emp_randomize_chars()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9653 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
niffiwan b8c625d589 log the correct CSG version
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9652 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
The_E 20abba69dc Fix my fix from revision 9305: Properly check for null pointer dereference
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9651 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
FUBAR-BDHR 0457fcc9ad From Yarn fix for Mantis 2849 +Flags: does not select main halls
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9650 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:15 +10:00
Echelon9 0a7fcfc0a5 Fix Mantis 2854: AddressSanitizer: global-buffer-overflow in do_subobj_hit_stuff()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9649 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Echelon9 51c14de891 Fix Mantis 2853: AddressSanitizer: heap-buffer-overflow in change_ship_type()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9648 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Echelon9 e0ed2fa45f Let form follow substance; when using indentation around if() ensure the approach is clear
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9647 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Echelon9 83bb931baf Fix for Mantis 2821: AddressSanitizer: global-buffer-overflow in ship_get_secondary_weapon_range()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9646 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Echelon9 7d76471b03 Fix Mantis 2834: AddressSanitizer: global-buffer-overflow in get_max_ammo_count_for_bank()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9645 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Echelon9 690460df8e Fix Mantis 2824: AddressSanitizer: global-buffer-overflow in obj_snd_delete_all()
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9644 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Goober5000 b1191f53d5 code cleanup related to Mantis #2845... straighten out and standardize the differences between the various OPF_SHIP_WING_* argument types make sure all ships using an OPF_SHIP_WING_* type actually specify and handle the type they need to (removing the ones that don't make sense, e.g. you can't set the orientation of a waypoint) enforce type safety by clarifying the distinction between "any ship on a team" and "every ship on a team", and splitting the OSWPT_TYPE_TEAM type to accommodate this (which maintains compatibility with the original OPF_SHIP_WING_TEAM type)
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9643 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Goober5000 f865ab85b5 fix the is-in-box sexp
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9642 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Goober5000 381f54663b the fix for Mantis #2845 in isolation
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9641 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Goober5000 8926a4de06 Yarn's patch to make version checking work correctly
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9640 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
chief1983 f5903f771d More missed filename renames.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9636 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
chief1983 51abff326d This was probably not letting linking work correctly.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9634 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Zacam 34b7dbe233 Revert r9631: If you are going to make a fix, commit just the fix, not a slew of "oh, also" stuff that ends up breaking things. Especially not immediately preceding an RC phase, kthx.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9632 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Goober5000 be86442006 cleanup due to Mantis #2845... straighten out and standardize the differences between the various OPF_SHIP_WING_* argument types make sure all ships using an OPF_SHIP_WING_* type actually specify and handle the type they need to (removing the ones that don't make sense, e.g. you can't set the orientation of a waypoint) fix num-ships-in-battle and is-in-box which were both broken and make sure the sexp lookup for IFFs uses sexp_determine_team rather than iff_lookup (which is the actual fix for Mantis #2845)
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9631 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Echelon9 e773a0a94e Fix for Mantis 2844: AddressSanitizer: heap-buffer-overflow in pilotfile_convert::csg_import_red_alert csg_convert.cpp:438
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9630 387891d4-d844-0410-90c0-e4c51a9137d3
2013-06-11 19:22:14 +10:00
Echelon9 709f914867 Fix Mantis 2825: AddressSanitizer: global-buffer-overflow in turret_weapon_has_flags() aiturret.cpp:316
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9629 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:35 +10:00
Echelon9 cf8bad999b Fix Mantis 2828: AddressSanitizer: global-buffer-overflow in ship_subsys_disrupted() ship.cpp:8066
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9627 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:35 +10:00
Echelon9 62600ec156 Fix for Mantis 2820: AddressSanitizer: global-buffer-overflow in os_init_cmdline() cmdline.cpp on Mac
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9626 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:35 +10:00
niffiwan 2b6fea8ff4 From Yarn - Fix mantis 2839: remove overlap in default 640x480 res HUD gauges
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9625 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:35 +10:00
niffiwan 414ab43e64 Fix mantis 2832: conversion functions now use certain consts from the new pilot code when exporting *only*
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9624 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:35 +10:00
zookeeper aec367efbc Probably fixes is-secondary-selected not working.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9623 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:35 +10:00
niffiwan 61bf714c51 Fix mantis 2815: store single/multi squad names and images separately (in csg/plr respectively)
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9622 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:35 +10:00
Echelon9 d0ca515cef Fix Mantis 2836: AddressSanitizer: global-buffer-overflow in ai_fire_from_turret() aiturret.cpp:2528
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9621 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
Echelon9 351da2c864 Fix for Mantis 2835: AddressSanitizer: global-buffer-overflow in ConditionedHook::ConditionsValid() scripting.cpp:338
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9620 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
Echelon9 a9a1c736c1 Fix use of magic numbers in ConditionedHook::ConditionsValid()
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9619 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
chief1983 86309a5d66 Since the timerbar warning can't be fixed, this should fix the remaining parts of Mantis #2829 by escaping things it confused with xml tags.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9618 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
Echelon9 2f5fc4a754 CommanderDJ's patch for half of the Doxygen warnings - see Mantis 2829
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9617 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
karajorma 78b02095e6 Forgot to null check that. Also this SEXP was only designed to work on ships, not wings or teams. I can add that later maybe.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9616 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
niffiwan 2a7174b1bf GCC warning: vector.size() is unsigned, no point in checking if it's >= 0
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9615 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
niffiwan c4115831fc Fix for mantis 2813: don't let pilot conversion create more than MAX_PILOTS
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9614 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
niffiwan 9ebbd7efce Fix for mantis 2814: don't check filename lengths when deleting .csg files Also change win32 to check for last . in filenames, not the 1st
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9613 387891d4-d844-0410-90c0-e4c51a9137d3
2013-04-14 13:00:34 +10:00
Echelon9 f627a66488 Extra validation to help triage Mantis 2828
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9612 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:49 +10:00
The_E 3664486cdb If the player ships' sensors are out, we need to exit button_function earlier.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9611 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:49 +10:00
m_m 53b8ebeeb4 Fixed scripting functions which use the current camera to also use the main camera when no custom camera is in use. This adds a optional boolean parameter to getCurrentCamera to retain backwards-compatibility.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9610 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:49 +10:00
Echelon9 36363fc419 Fix for Mantis 2823: AddressSanitizer: global-buffer-overflow in hud_escort_ship_hit()
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9607 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
niffiwan f45b8dbf5a Update for mantis 2817: this is a better way of removing extra popups There are more types of campaign load failures than just missing campaign files
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9606 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
niffiwan 45cbfa32e0 Fix for mantis 2817: remove two redundant popups regarding missing campaigns
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9605 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
Echelon9 9376ad1d51 Fix Mantis 2822: AddressSanitizer: global-buffer-overflow in hud_target_change_check() hudtarget.cpp:4459
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9604 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
Echelon9 078d065688 Third shot at Mantis 2818, other sections of the code in modelinterp.cpp use -1 is odd ways but nonetheless valid ways
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9603 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
karajorma 0c4f6bfcdc Fix Mantis 2811 (Default Campaign File Name was not used).
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9602 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
Echelon9 2d51c3e05f Have another go at fixing Mantis 2818, this time using the less fatal Warning() report in Debug builds when invalid handles passed to bm_is_valid()
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9601 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
karajorma ac6796f5af Add all the strings that had no translation.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9600 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
zookeeper b4f721c253 Fixed dual fire being available even for secondary banks with only one firepoint.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9599 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:18 +10:00
chief1983 4fe447aab5 Revert r9596 and reopen #2818.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9598 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:17 +10:00
niffiwan 815ce24d0d Fix for mantis 2809: re-enable quick-start-missions (g key in debug) Save Recent_missions & last_flown_ship_si_index to CSG
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9597 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:17 +10:00
Echelon9 c348f5b7c0 AddressSanitizer: global-buffer-overflow in bm_is_valid() bmpman.cpp fix
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9596 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:17 +10:00
The_E 8aba499825 Accidentally committed some project files, ooops.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9595 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:17 +10:00
The_E b4f39e9ece Patch for Mantis 2808: Player select menu always defaults to Single Player mode regardless of what the last played mode was.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9594 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:17 +10:00
zookeeper 53c90981ea Fixed even secondaries without a free flight time receiving a decreased initial speed, which was causing particle spews to create a particle with the wrong speed when the weapon is created.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9593 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:17 +10:00
niffiwan edcb5aa483 Fix for mantis 2810: ensure Last Player from registry/.ini is at the top of the pilot selection list
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9592 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-30 15:36:17 +10:00
niffiwan 8a1666c5aa derp - fix for r9584; remove 7th entry in the 6-item array Thanks for zookeeper for noticing this
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9585 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:07 +10:00
niffiwan 5c3d105f85 Fix for mantis 2789: replace shield icons drawn with 100's of lines with 6-point polygons
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9584 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:07 +10:00
zookeeper c105b2ad15 Fixed an accidentally committed debug mprintf.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9583 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:07 +10:00
zookeeper 4eee845335 Restored the code which loads up the default HUD colors from hud_3.hcf. Was apparently accidentally removed in r9549.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9582 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:07 +10:00
zookeeper 95a11f71f8 Fixed gr_opengl_circle drawing the middle horizontal line twice, which is a problem when drawing with alpha.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9581 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:07 +10:00
chief1983 37a37d1a5b Missing doxproj from Antipodes.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9567 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:06 +10:00
FUBAR-BDHR 07fdf1b3c1 Commit 9473 from anitpodes to prevent standalone crashing never ported over. Original commit message: "From Eli2: Lower the value of MAX_SHIPS_PER_PACKET to 64 in order to keep packet size down"
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9565 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:06 +10:00
Zacam 43f02b201a For BluePlanet compatibility: change-nebula-pattern SEXP. Also adds a logging nprintf for op_num in add_to_event_log_buffer.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9564 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:06 +10:00
FUBAR-BDHR 13efc81b22 Need to back out temporary commit 9553 or it looks in inferno\inferno and \inferno for pilots.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9563 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:06 +10:00
zookeeper 2490764c1b Fixed a syntax error.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9562 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:06 +10:00
Zacam 593be42e66 *drum roll* Pilot Code! Originated by taylor. Additional direct work by: The E, niffiwan, CommanderDJ, Pyro3D, Echelon9 (PVS-Studio), Karajorma and Eli2. (If I missed you, don't kill me.)
MASSIVE thanks to Mjn.Mixael and Blue Planet for tireless constant testing.
(It's still not perfect, but it probably wouldn't be where it is at without them)

Spans a lot from initial commit to AP Branch in r6835.

git-svn-id: svn://svn.icculus.org/fs2open/trunk@9561 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:06 +10:00
zookeeper 222f632943 Fix turrets not getting can_move = true set for them; fixes at least glowpoints parented to turrets not moving right.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9560 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:26:06 +10:00
chief1983 e22b7a5548 This version string is not used for output filenames, it's more useful indicating to developers that this is a trunk build as opposed to an RC or final release. Also, the same change wasn't made to the Xcode 3 project so they ought to match one way or another.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9555 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
chief1983 b765485d98 Clean up a few more Inferno references.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9554 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Zacam 11140adf51 aaaaaaaaand finally, lets make sure that we can actually see the "Inferno" directory for all those pilot files. *sighs* That had better be everything.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9553 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Zacam 0ba6052326 Update to r9550: Make sure that we keep the right directory default for the reading of current player Pilot files until the Pilot code goes in.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9552 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Zacam abd6a465f7 And lets not forget Global Section headers.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9551 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Zacam 16e9892903 Whoops. When removing #ifdefs, check the #else block.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9550 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Zacam 759b080814 pre-Antipodes Staging Merge: "Inferno" build options go away, INF_BUILD settings now "default" settings. Fixed and made consistent across all projects the Build Output names ("Debug" used for Debug builds at the very end of the file name before the extension and after other options such as SSE, where applicable) Other unused #defines or #ifdefs removed: DEMO build Related, STANDALONE_ONLY_BUILD (already covered by -standalone command line flag)
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9549 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
chief1983 104d2d6fce Update trunk version to 3.6.19 to make sure nightlies are now properly indicated as newer than 3.6.18.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9547 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
karajorma 9531268fd9 Fix Mantis 2797 (Ship Loadout shouldn't remember the previous settings if the mission has changed)
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9544 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Goober5000 3c3d1b4bd1 proper movement of ships attached to other ships fixes Mantis #2787
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9542 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Goober5000 dc18b7e012 fix Mantis #2796 (capships always have an EMP time of 7.5 seconds) by adding a weapon flag to allow the full value of emp_time to be used
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9540 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
Zacam 8959ecdc07 Follow up to r9536: re-instate -no_warn, but put it behind a compiler level #ifdef flag to enable the ability to use it. And if you don't know how to do that, you have no business using it.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9539 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:46 +10:00
m_m 7f170217a8 Fixed scripting issue with wrong type conversions.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9538 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 55d4f0b96c follow-up to revision 9127: that commit breaks FSPort (causing part of the nameplated Orions to be translucent), so let's just check that "nameplate" is the entire texture name
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9537 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
The_E 129d02eb0d Removing the -nowarn commandline argument. The encouragement of bad habits is a serious bug.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9536 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
The_E 4bcc9f1716 From AMS: Fix for Mantis 2293: Destroyed/departed AI showing up as present in wingmen display.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9535 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
niffiwan 24037c6e02 Fix for mantis 2786: from Yarn - make +Main Hall: always override +Flags: i.e. so retail-compatible campaigns can use the second main hall in retail and a different main hall in FSO
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9534 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Echelon9 72770939a2 Further spelling fixes, inspired by bugmenot's Mantis 2794
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9533 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
The_E d1e73bd8b7 Followup for 2788: Fix potential issue while looping through subobjects.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9530 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
The_E 6197c20010 Patch for Mantis 2788: Difficulty-based damage scaling does not work
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9529 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 6ab03f2e2b might as well remove this unnecessary temporary variable
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9528 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
niffiwan 37c132318a Fix for mantis 2785: when unpausing sounds, use the previous volume, not the detault
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9527 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Echelon9 93d0af04d2 Resolve uninitialised value warnings in load_gauge_warhead_count()
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9526 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Echelon9 6fceacafd8 Revise Xcode4 project file to support recommended settings of the current Xcode 4.6 release
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9525 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 1409e7d6cf don't throw errors for missing skybox models... we just won't display the skybox
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9524 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 e4d92ae779 don't crash when doing debug stuff
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9523 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
The_E d02ef204a2 Fix a bug caused by an oversight during refactoring. It should be noted that this wouldn't have happened if this code was using normal scoping in for loops (for (int i = 0.....)) instead of having the loop counter be declared in the outer scope.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9522 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
karajorma 8271a12a53 FUBAR's fix for Mantis 2778 (Game_skill_level goes out of range and causes crashes) with some changes by me.
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9520 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 6cab0d12bc no, silly Volition programmer, that's handled elsewhere (fix Mantis #2783)
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9516 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 28b386633b this ought to fix Mantis #2326
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9515 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 c8b5e8e755 correct the sexp help for string-to-int
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9514 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 ebd54319d2 flip these around so that they're less confusing
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9513 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Goober5000 94f7a54596 apply m!m's fix for Mantis #2780 also correct the off-by-one error in the range check (path_num must < n_paths, not <=)
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9512 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:44 +10:00
The_E 17a48525e7 Prevent the hud-set-frame sexp from accidentally causing badness by setting an invalid frame offset
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9510 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:44 +10:00
niffiwan f947a5fb5d Fix for mantis 2776: from onlyjob, fix format-hardening error 2013-01-22 09:57:29 +00:00
m_m cd19783e69 Fix for Mantis 2763: ETS gauge showing up for ships with no shields if default ship had shields 2013-01-19 13:06:51 +00:00
Goober5000 29a0cc5684 tell who is respawning 2013-01-16 07:13:47 +00:00
Goober5000 a916633b46 onlyjob's spelling fixes, per Mantis #2777 2013-01-13 09:50:08 +00:00
Goober5000 4791df1b17 return special_hitpoints to using a specific value instead of a multiplier;
this was extensively tested in both single-player and multiplayer, using change-ship-class and changing ship loadout, against ships both higher and lower in hitpoints, to ensure it didn't re-break Mantis #2326
2013-01-13 09:28:28 +00:00
Goober5000 e26c663c59 wing departure now works 2013-01-13 03:55:09 +00:00
Goober5000 107a61ea13 for Mantis #2097, straighten out the departure code so that goals to warp cause warping, and comm departures use whatever departure method is specified 2013-01-13 03:03:25 +00:00
Goober5000 9cb9e349ac FUBAR's changes for Mantis #2775, plus the addition of the asteroid model 2013-01-13 00:05:21 +00:00
Goober5000 6fe3e087a9 FUBAR's fix for #2779 -- don't crash when launching asteroids 2013-01-12 22:34:30 +00:00
Goober5000 15fb88b8c5 add files to project 2013-01-08 01:56:54 +00:00
Goober5000 9b589d3005 MSVC6 compatibility 2013-01-08 01:44:48 +00:00
Goober5000 ab5c47cdf6 jg18's patch -- don't do irrelevant stuff when we're only querying for flags
see http://www.hard-light.net/forums/index.php?topic=83315.0
2013-01-07 23:33:49 +00:00
chief1983 ef9e06fcb1 Reverting 9491. 2013-01-07 16:33:42 +00:00
Echelon9 85e42f57be Updated Mac Xcode 4 project for the 3.6.16 RC phase 2013-01-07 14:20:24 +00:00
Goober5000 6b62d36e02 change from 1 meter to 0.1 meter 2013-01-07 04:35:36 +00:00
Goober5000 bdb40e07e9 strncpy_s wasn't specified quite right (Mantis #2765) 2013-01-07 04:07:28 +00:00
Goober5000 c610a1f9a2 FUBAR's fix for Mantis #2770
see http://www.hard-light.net/forums/index.php?topic=83122.0
2013-01-07 03:31:46 +00:00
chief1983 2d228279fa Change output filenames to match those used for 3.6.14 releases. 2013-01-06 19:24:49 +00:00
niffiwan 4b2bfd4bf3 autotools: remove extra -lpng that will break compiles if libpng12 is being used 2013-01-06 05:03:33 +00:00
niffiwan 4e4f551c31 Autotools: check for alternate libpng package name (specifically for opensuse) 2013-01-06 04:14:01 +00:00
niffiwan 7f7179f327 Workaround for mantis 2760: re-order struct shield_hit_info to avoid segfault with gcc & -ftree-vectorize 2013-01-03 06:57:53 +00:00
Goober5000 5a4c6c90c4 be mindful of sending ship-create packets for docked ships in multiplayer -- should fix Mantis #2761 2013-01-01 22:22:11 +00:00
niffiwan 45b98592e6 autotools: exclude lua5.2 because it's not (yet) compatible with FSO 2012-12-31 09:34:27 +00:00
Goober5000 154356924e allow alternate spelling 2012-12-30 18:01:02 +00:00
niffiwan 3177815a3c Linux/GCC compilation: -march=athlon64 could cause issues on non-AMD CPUs. Use mtune for more widely compatible binaries.
Also enable SSE/SSE2
2012-12-30 03:36:13 +00:00
The_E 71571e40da Fixes issue with the "no primary linking" weapon flag not working correctly 2012-12-29 23:19:51 +00:00
niffiwan a218b7d37d GCC: make install now installs fs2_open_x.y.z - helps Linux packaging tools 2012-12-27 09:47:35 +00:00
1628 changed files with 265821 additions and 94664 deletions

No files matched your search

+268
View File
@@ -0,0 +1,268 @@
*.o
*.a
.dirstamp
libtool
ltmain.sh
m4/libtool.m4
m4/ltoptions.m4
m4/ltsugar.m4
m4/ltversion.m4
m4/lt~obsolete.m4
compile
.deps/
code/.deps/
Makefile
Makefile.in
aclocal.m4
autom4te.cache/
config.*
code/fs2_open_*
code/wxFRED2_*
configure
depcomp
install-sh
missing
.svn
*.layout
projects/Xcode4/Frameworks/
projects/Xcode/Frameworks/
#========
#OS junk files
[Tt]humbs.db
*.DS_Store
#Visual Studio files
*.[Oo]bj
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.[Cc]ache
*.ilk
*.log
*.lib
*.sbr
*.sdf
*.opensdf
*.unsuccessfulbuild
ipch/
[Oo]bj/
[Bb]in
[Dd]ebug*/
[Rr]elease*/
Ankh.NoLoad
#MonoDevelop
*.pidb
*.userprefs
#Tooling
_ReSharper*/
*.resharper
[Tt]est[Rr]esult*
*.sass-cache
#Project files
[Bb]uild/
#Subversion files
.svn
# Office Temp Files
~$*
# vim Temp Files
*~
#NuGet
packages/
*.nupkg
#ncrunch
*ncrunch*
*crunch*.local.xml
# visual studio database projects
*.dbmdl
#Test files
*.testsettings
#===========
#########################
# .gitignore file for Xcode4 and Xcode5 Source projects
#
# Apple bugs, waiting for Apple to fix/respond:
#
# 15564624 - what does the xccheckout file in Xcode5 do? Where's the documentation?
#
# Version 2.1
# For latest version, see: http://stackoverflow.com/questions/49478/git-ignore-file-for-xcode-projects
#
# 2013 updates:
# - fixed the broken "save personal Schemes"
# - added line-by-line explanations for EVERYTHING (some were missing)
#
# NB: if you are storing "built" products, this WILL NOT WORK,
# and you should use a different .gitignore (or none at all)
# This file is for SOURCE projects, where there are many extra
# files that we want to exclude
#
#########################
#####
# OS X temporary files that should never be committed
#
# c.f. http://www.westwind.com/reference/os-x/invisibles.html
.DS_Store
# c.f. http://www.westwind.com/reference/os-x/invisibles.html
.Trashes
# c.f. http://www.westwind.com/reference/os-x/invisibles.html
*.swp
# *.lock - this is used and abused by many editors for many different things.
# For the main ones I use (e.g. Eclipse), it should be excluded
# from source-control, but YMMV
*.lock
#
# profile - REMOVED temporarily (on double-checking, this seems incorrect; I can't find it in OS X docs?)
#profile
####
# Xcode temporary files that should never be committed
#
# NB: NIB/XIB files still exist even on Storyboard projects, so we want this...
*~.nib
####
# Xcode build files -
#
# NB: slash on the end, so we only remove the FOLDER, not any files that were badly named "DerivedData"
DerivedData/
# NB: slash on the end, so we only remove the FOLDER, not any files that were badly named "build"
build/
#####
# Xcode private settings (window sizes, bookmarks, breakpoints, custom executables, smart groups)
#
# This is complicated:
#
# SOMETIMES you need to put this file in version control.
# Apple designed it poorly - if you use "custom executables", they are
# saved in this file.
# 99% of projects do NOT use those, so they do NOT want to version control this file.
# ..but if you're in the 1%, comment out the line "*.pbxuser"
# .pbxuser: http://lists.apple.com/archives/xcode-users/2004/Jan/msg00193.html
*.pbxuser
# .mode1v3: http://lists.apple.com/archives/xcode-users/2007/Oct/msg00465.html
*.mode1v3
# .mode2v3: http://lists.apple.com/archives/xcode-users/2007/Oct/msg00465.html
*.mode2v3
# .perspectivev3: http://stackoverflow.com/questions/5223297/xcode-projects-what-is-a-perspectivev3-file
*.perspectivev3
# NB: also, whitelist the default ones, some projects need to use these
!default.pbxuser
!default.mode1v3
!default.mode2v3
!default.perspectivev3
####
# Xcode 4 - semi-personal settings
#
#
# OPTION 1: ---------------------------------
# throw away ALL personal settings (including custom schemes!
# - unless they are "shared")
#
# NB: this is exclusive with OPTION 2 below
xcuserdata
# OPTION 2: ---------------------------------
# get rid of ALL personal settings, but KEEP SOME OF THEM
# - NB: you must manually uncomment the bits you want to keep
#
# NB: this *requires* git v1.8.2 or above; you may need to upgrade to latest OS X,
# or manually install git over the top of the OS X version
# NB: this is exclusive with OPTION 1 above
#
#xcuserdata/**/*
# (requires option 2 above): Personal Schemes
#
#!xcuserdata/**/xcschemes/*
####
# XCode 4 workspaces - more detailed
#
# Workspaces are important! They are a core feature of Xcode - don't exclude them :)
#
# Workspace layout is quite spammy. For reference:
#
# /(root)/
# /(project-name).xcodeproj/
# project.pbxproj
# /project.xcworkspace/
# contents.xcworkspacedata
# /xcuserdata/
# /(your name)/xcuserdatad/
# UserInterfaceState.xcuserstate
# /xcsshareddata/
# /xcschemes/
# (shared scheme name).xcscheme
# /xcuserdata/
# /(your name)/xcuserdatad/
# (private scheme).xcscheme
# xcschememanagement.plist
#
#
####
# Xcode 4 - Deprecated classes
#
# Allegedly, if you manually "deprecate" your classes, they get moved here.
#
# We're using source-control, so this is a "feature" that we do not want!
*.moved-aside
# .xccheckout
#
# Per http://stackoverflow.com/questions/18340453/should-xccheckout-files-in-xcode5-be-ignored-under-vcs
#
*.xccheckout
+21 -1
View File
@@ -1,6 +1,26 @@
ChangeLog for fs2_open. All times are UTC.
Updated 2002-10-31 03:46
Features: September 2013
http://www.hard-light.net/forums/index.php?topic=85700.0
- show-subtitle-text can now display messages as well as raw text - Goober5000
- toggle subsytem scanning, scannable, cargo revealed, hidden from sensors, stealth and friendly stealth added to the alter-ship-flag sexp - karajorma
- Support added to add more languages besides English, French, German and Polish, leading the way to better localization! - karajorma
- event.log can now snapshot events checked in a frame and record the status of an event the previous time it was checked as well as the current state - karajorma
- added a player-is-cheating sexp - The E
- allow a user-specified number of credit images - Goober5000
- allow the specification of the positions of medals, callsigns and labels on the medal screen. - Goober5000
- lua function to check if a ship is warp capable, and access to a ship's auto-aim FOV - zookeeper
- is-facing now works for things that aren't ships (like waypoints!) - zookeeper
- experimental configurations to make AVX builds (see this post for more explainations) - The E
- new ship flag to enable smarter AI use of afterburners. Now it can use them while flying waypoints or attacking capital ships (use the free-afterburner-use flag with alter-ship-flag) - Admiral MS
- the number of medals is now dynamic! - Goober5000
- frame profiling code, see what exactly is slowing down FreeSpace. (Mostly for devs or coders) - Swifty + The E
- allowing fade-in and fade-out sexps to use any color, not just black, white and red. - Goober5000
==================================================================
( massive gap in updates, maybe this will be filled in someday...)
==================================================================
2002-10-30 22:57 randomtiger
+3 -1
View File
@@ -2,7 +2,9 @@
#
# This file uses GNU Automake to generate makefiles
SUBDIRS = code
ACLOCAL_AMFLAGS = -I m4
SUBDIRS = mongoose code
EXTRA_DIST = \
+166
View File
@@ -0,0 +1,166 @@
**********************************************************************
* INSTALL file for STLport *
* *
**********************************************************************
STLport is a full ANSI C++ Standard library.
This distribution contains STLport sources only, no binaries.
To use STLport iostreams, locale and complex numbers, you have to build STLport
library from sources in "build/lib" directory and link your programs with it.
Starting with 5.0 the 'wrapper' mode is not supported anymore. You cannot use native
compiler iostreams implementation with STLport STL (see doc/FAQ for explanations).
Now you have to choose between STLport iostreams or no iostreams.
==== Unpacking and installing STLport ==========
1) Unpack STLport archive to a directory accessible during compilation.
NOTE: DO NOT overwrite header files coming with the compiler, even if you made
a backup - this won't work! Most probably, you've already unpacked the archive before
reading this file though ;)
2) Make sure "stlport" directory of this distribution comes before compiler's one
in your include paths when you compile the project.
Note: for SunPro CC 5.0 and higher, there used to be special directory "stlport/SC5"
this is now obsolete, please make sure you do not use it anymore.
3) Make sure you do not rename this "stlport" subdirectory -
that may result in compilation errors.
NOTE: Your compiler should be recognized by STLport source code with no configuring.
Please edit appropriate configuration header for your compiler
directly if you have to make compiler-specific configuration changes
(see stlport/stl/config).
4) Run:
configure --help
Depending on your environment, Windows command shell or Unix like shell,
configure.bat or configure script will be run respectively. For Windows users
running configure script is mandatory in order to declare the compiler you are
going to use.
5) Go to "build/lib" subdirectory. It contains various makefiles for different
compilers and 'make' utilities (GNU Make and Microsoft's nmake supported).
Verify you can do command line compiles. IDE users may have to do something
special, like add environment variables (for Microsoft) or install
additional compiler components (for Metrowerks), before they can use their
command line compilers (see doc/README.xxxx for additionnal information).
configure script should have already created a Makefile file so that you only
have to call 'make' or 'nmake' (for some platforms GNU make might be hidden
behind 'gmake').
IMPORTANT:
If you DO NOT plan to use STLport iostreams and/or locale implementation but just
the STL, you do not have to build the library.
If you have decided to disable STLport iostreams and locale using _STLP_NO_IOSTREAMS
configuration macro in stlport/stl/config/user_config.h, you may stop reading here.
==== Building STLport iostreams library ==========
Below are step-by-step instructions to build STLport streams library. This is a general
build process description, for a more detailed one check README files in the doc folder:
5) Using appropriate make command (make or nmake), do
make clean install
to build the STLport libraries. Make files are set up to build several different
flavors - debug/nondebug, static/dynamic versions. But not all flavors will be build
by default. See build/lib/README for other make targets.
Note: 'install' target work slightly different than usual - it installs libraries into
<STLport root dir>/lib and bin catalogs, NOT IN SYSTEM CATALOG. You can do the system
install by just copying stlport and lib folder to the destination of your choise. For
example on UNIX-like platforms this can be done with the following commands:
su
tar cf - stlport | (cd /usr/local/include; tar xf -)
chmod -R a+r /usr/local/include/stlport
chown -R root:root /usr/local/include/stlport
(cd lib; tar cf - --exclude=CVS --exclude=.cvsignore .) | (cd /usr/local/lib; tar xf -)
chown -R root:root /usr/local/lib/libstlport*
exit
Note: System install is optional, most of compilers/linkers support searching for includes
and libs throught out the whole filesystem, just check your documentation on how to achieve
this.
If you use cross-compiler, you can find libraries in the <STLport root dir>/lib/<target platform>
catalog.
6) If build fails, you may choose to :
- try fixing the build ;)
- wait until somebody else will submit corresponding changes to be incorporated in next STLport
release/snapshot.
In case you do patch STLport, please submit your patches to
https://sourceforge.net/tracker/?atid=766246&group_id=146814&func=browse
==== Linking your application with STLport library ==========
7) Check the build:
Example:
- under Linux and other Unixes:
cd build/test/unit
make install
../../../bin/stl_unit_test
../../../bin-g/stl_unit_test
- under Windows:
cd build\test\unit
nmake install
cd ..\..\..\bin
stl_unit_test
stl_unit_testd
stl_unit_teststld
8) Supply the "lib" subdirectory to the library search path and add desired
library to the list of libraries to link with.
Examples (imagine you have mytest.cpp in the same directory as this file is):
With GCC : g++ -pthread -I./stlport mytest.cpp -L./lib/ -lstlport
With DEC CC : cxx -I./stlport mytest.cpp -L./lib/ -lstlport
With SUN CC : CC -mt -I./stlport mytest.cpp -L./lib/ -lstlport
.....
For several compilers supporting auto linking feature (VC++, Borland, DMC),
you do not have to specify "stlport.M.m.lib" explicitly, as it is being choosen
and forced to link automatically by "#pragma"'s in compiler config files
Appropriate version is being selected based on compiler options and _STLP_DEBUG
setting. All you have to do is to set library search path for the linker.
Example :
cl.exe /I.\stlport mytest.cpp /link /libpath:.\lib /MD
9) If you linked your application with shared STLport library (.so or .dll), please
make suze that your .so or .dll can be found by the dynamic linker.
Under Windows, the paths searched depend on the particular flavor, see the MSDN
documentation for LoadLibrary at http://msdn.microsoft.com. The easiest ways are to
either modify the PATH environment variable or copy all .dll's next to the
executable like it is done per default when unit tests executable are put next
to dlls.
Under Linux, the environment variable LD_LIBRARY_PATH can be adjusted to point
to the dir containing .so. See the manpage for ld.so for more info.
10) STLport builds only multithreaded libraries, so your application should be compiled
as multithreaded, too. Use -pthread (or -pthreads on Solaris) option for GCC, -mt for SunPro,
/MT for VC, and so on. Sometimes you should define _REENTRANT or something else, depends
upon platform/compiler. See compiler's and linker's options on command line when you build
unit tests (build/test/unit) for reference. The last is useful for ANY platform.
11) Don't hesitate to read READMEs (doc/README*, build/lib/README*, build/test/unit/README*)
and doc/FAQ.
12) Have fun!
+120
View File
@@ -0,0 +1,120 @@
**********************************************************************
* INSTALL file for STLport 5.2 *
* *
**********************************************************************
STLport is a full ANSI C++ Standard library.
This distribution contains STLport sources only, no binaries.
To use STLport iostreams, locale and complex numbers, you have
to build STLport library from sources and link your programs with it.
Starting with 5.0 the 'wrapper' mode is not supported anymore.
You cannot use native compiler iostreams implementation with STLport STL
(see doc/FAQ for explanations).
==== Installing STLport ==========
0) DO NOT overwrite/move/rename header files coming with the compiler,
even if you made a backup---STLport need this headers and don't
override ones.
1) Run
./configure --help
read options description; if you use compiler
different from gcc, pay attention to --use-compiler-family= option.
2) Run
./configure <option>
Options here more-or-less traditional.
Note: ./configure give hints only for library build, it dosen't
create/edit any headers, check you system etc. This is simple way
to store custom options, not more. If you want to change default
behaviour of STLport, see stlport/stl/config/user_config.h and
stlport/stl/config/host.h; read the comments in this files!
Not all combinations of options healthy, you should understand
what you do. If not, keep all unchanged.
Note: you can find all recognised 'settings' in the file
build/Makefiles/gmake/config.mak
This is generated file, but only ./configure will rewrite one.
3) Run
make && make check
Only GNU Make supported! Preferred verion of GNU Make >= 3.81;
never use GNU Make before 3.79 --- build not work properly;
GNU makes >= 3.79 and < 3.81 may fail to build library/tests
properly, due to bugs; but the real results depends upon
platform.
4) If build fine, become superuser and run
make install
Note: you can use --prefix= to change installation path
(or macro DESTDIR, as usual), or even skip installation and use
STLport in-place.
==== Usage STLport ==========
1) The best way to understand how to use it, is to see on compilation,
linking, running unit tests, i.e. see on options when you do
(cd build/test/unit; make check)
2) Make sure "stlport" directory of this distribution comes before
compiler's one in your include paths (something like
-I<base install path>/stlport); never rename 'stlport' part of path!
Compilation:
c++ -pthread -fexceptions -O2 -I/usr/local/include/stlport -c -o test.o test.cc
In case of gcc, libstlport replace libstdc++ (not in all cases!)
Link, variant 1:
c++ -pthread -fexceptions -O2 -I/usr/local/include/stlport -nostdlib -o mytest \
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/../../../crt1.o \
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/../../../crti.o \
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/crtbegin.o \
test.o \
-lstlport \
-lgcc_s -lpthread -lc -lm \
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/crtend.o \
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/../../../crtn.o
Of cause, names of start/stop files not hardcoded, you can locate it with
c++ -print-file-name=crt1.o
Link, variant 2:
gcc -pthread -fexceptions -O2 -I/usr/local/include/stlport -o mytest \
test.o -lstlport
If you use gcc before 3.3, you must link with libstdc++, because
language-support library (libsupc++.a) don't contain necessary
functions.
3) STLport builds only multithreaded libraries (by default), so your
application should be compiled as multithreaded, too. Use -pthread
(or -pthreads on Solaris) option for GCC, -mt for SunPro and so on.
Sometimes you should define _REENTRANT or something else, depends
upon platform/compiler. See compiler's and linker's options
on command line when you build unit tests (build/test/unit)
for reference. The last is useful for ANY platform (special
attention for Windows users).
4) Don't hesitate to read READMEs (doc/README*, build/lib/README*,
build/test/unit/README*) and doc/FAQ.
5) Have fun!
+26
View File
@@ -0,0 +1,26 @@
# Time-stamp: <08/06/12 14:28:42 ptr>
#
# Copyright (c) 2004-2008
# Petr Ovtchenkov
#
# Licensed under the Academic Free License version 3.0
#
SRCROOT := build
SUBDIRS := build/lib
include ${SRCROOT}/Makefiles/gmake/subdirs.mak
all install depend clean clobber distclean check::
+$(call doinsubdirs,${SUBDIRS})
distclean clean depend clobber::
+$(call doinsubdirs,build/test/unit)
release-shared install-release-shared:
+$(call doinsubdirs,${SUBDIRS})
install::
${MAKE} -C build/lib install-headers
.PHONY: all install depend clean clobber distclean check release-shared install-release-shared
+64
View File
@@ -0,0 +1,64 @@
**********************************************************************
* README file for STLport 5.0 *
* *
**********************************************************************
This directory contains the STLport-5.0 release.
What's inside :
README - this file
INSTALL - installation instructions
bin - installation directory for STLport unit tests;
it may contain more subdirs, if you use
crosscompilation
build/lib - build directory for STLport library (if you use
STLport iostreams and/or locale only)
build/test/unit - build directory for regression (unit) tests
build/test/eh - build directory for exception handling tests
stlport - main STLport include directory
src - source for iostreams implementation and other parts
that aren't pure template code
lib - installation directory for STLport library (if you
use STLport iostreams and/or locale only);
it may contain more subdirs, if you use
crosscompilation
test/unit - unit (regression) tests
test/eh - exception handling test using STLport iostreams
etc - miscellanous files (ChangeLog, TODO, scripts, etc.)
GETTING STLPORT
To download the latest version of STLport, please be sure to visit
https://sourceforge.net/project/showfiles.php?group_id=146814
LEGALESE
This software is being distributed under the following terms:
*
*
* Copyright (c) 1994
* Hewlett-Packard Company
*
* Copyright (c) 1996-1999
* Silicon Graphics Computer Systems, Inc.
*
* Copyright (c) 1997
* Moscow Center for SPARC Technology
*
* Copyright (c) 1999-2003
* Boris Fomitchev
*
* This material is provided "as is", with absolutely no warranty expressed
* or implied. Any use is at your own risk.
*
* Permission to use or copy this software for any purpose is hereby granted
* without fee, provided the above notices are retained on all copies.
* Permission to modify the code and to distribute modified code is granted,
* provided the above notices are retained, and a notice that the code was
* modified is included with the above copyright notice.
*
**********************************************************************
@@ -0,0 +1,77 @@
# Time-stamp: <08/01/12 00:50:38 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
INCLUDES :=
ifndef _FORCE_CXX
CXX := CC
else
CXX := ${_FORCE_CXX}
endif
ifndef _FORCE_CC
CC := cc
else
CC := ${_FORCE_CC}
endif
CXX_VERSION := $(shell ${CXX} -V 2>&1 | grep ${CXX} | awk '{ print $$4; }')
CXX_VERSION_MAJOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$1; }')
CXX_VERSION_MINOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$2; }')
CXX_VERSION_PATCH := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { if (NF > 2) {print $$3;}else{print "0"} }')
DEFS ?=
OPT ?=
OUTPUT_OPTION = -o $@
LINK_OUTPUT_OPTION = ${OUTPUT_OPTION}
CPPFLAGS = $(DEFS) $(INCLUDES)
OPT += -mt +w2
CCFLAGS = -erroff=doubunder -qoption ccfe -expand=1000 -library=no%Cstd,no%iostream,no%rwtools7-xildoff $(OPT)
CFLAGS = $(OPT)
CXXFLAGS = -erroff=doubunder -qoption ccfe -expand=1000 -library=no%Cstd,no%iostream,no%rwtools7 -xildoff $(OPT)
CDEPFLAGS = -xM
CCDEPFLAGS = -xM
# STLport DEBUG mode specific defines
stldbg-static : DEFS += -D_STLP_DEBUG
stldbg-shared : DEFS += -D_STLP_DEBUG
stldbg-static-dep : DEFS += -D_STLP_DEBUG
stldbg-shared-dep : DEFS += -D_STLP_DEBUG
# optimization and debug compiler flags
release-static : OPT += -xO2
release-shared : OPT += -xO2
dbg-static : OPT += -g
dbg-shared : OPT += -g
#dbg-static-dep : OPT += -g
#dbg-shared-dep : OPT += -g
stldbg-static : OPT += -g
stldbg-shared : OPT += -g
#stldbg-static-dep : OPT += -g
#stldbg-shared-dep : OPT += -g
# dependency output parser (dependencies collector)
DP_OUTPUT_DIR = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_DBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_DBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_STLDBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_STLDBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
@@ -0,0 +1,79 @@
# Time-stamp: <08/01/12 00:51:07 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifndef _FORCE_CXX
CXX := aCC
else
CXX := ${_FORCE_CXX}
endif
ifndef _FORCE_CC
CC := aCC
else
CC := ${_FORCE_CC}
endif
CXX_VERSION := $(shell ${CXX} --version 2>&1 | grep ${CXX} | awk '{ print $$6; }')
ifeq ($(CXX_VERSION),)
CXX_VERSION := $(shell ${CXX} --version)
endif
CXX_VERSION_MAJOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$2; }')
CXX_VERSION_MINOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$3; }')
DEFS ?=
OPT ?=
ifndef WITHOUT_THREAD
DEFS += -D_REENTRANT
endif
OUTPUT_OPTION = -o $@
LINK_OUTPUT_OPTION = ${OUTPUT_OPTION}
CPPFLAGS = $(DEFS) $(INCLUDES)
CFLAGS = -Aa +z $(OPT)
CXXFLAGS = -Aa +z -mt $(OPT)
CDEPFLAGS = -E +Md
CCDEPFLAGS = -E +Md
# STLport DEBUG mode specific defines
stldbg-static : DEFS += -D_STLP_DEBUG
stldbg-shared : DEFS += -D_STLP_DEBUG
stldbg-static-dep : DEFS += -D_STLP_DEBUG
stldbg-shared-dep : DEFS += -D_STLP_DEBUG
# optimization and debug compiler flags
release-static : OPT += +O2
release-shared : OPT += +O2
dbg-static : OPT += -g
dbg-shared : OPT += -g
#dbg-static-dep : OPT += -g
#dbg-shared-dep : OPT += -g
stldbg-static : OPT += -g
stldbg-shared : OPT += -g
#stldbg-static-dep : OPT += -g
#stldbg-shared-dep : OPT += -g
OPT += +W495,749,2186,2191,2340,2430,2550
# dependency output parser (dependencies collector)
DP_OUTPUT_DIR = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_DBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_DBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_STLDBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_STLDBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
@@ -0,0 +1,10 @@
# -*- Makefile -*- Time-stamp: <07/03/08 21:53:08 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
@@ -0,0 +1,10 @@
# -*- Makefile -*- Time-stamp: <07/03/08 21:55:22 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
@@ -0,0 +1,98 @@
# -*- Makefile -*- Time-stamp: <07/05/31 01:05:40 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Copyright (c) 2006, 2007
# Francois Dumont
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifneq ($(OSNAME),linux)
OPT += -tWC -w-par
LDFLAGS += -Tpe -w -w-dup
START_OBJ = c0x32.obj
LDFLAGS += -L$(subst /,\\,$(STLPORT_DIR)/lib)
ifdef WITH_DYNAMIC_RTL
release-static: DEFS += -D_STLP_USE_STATIC_LIB
dbg-static: DEFS += -D_STLP_USE_STATIC_LIB
stldbg-static: DEFS += -D_STLP_USE_STATIC_LIB
endif
ifdef WITH_STATIC_RTL
release-shared: DEFS += -D_STLP_USE_DYNAMIC_LIB
dbg-shared: DEFS += -D_STLP_USE_DYNAMIC_LIB
stldbg-shared: DEFS += -D_STLP_USE_DYNAMIC_LIB
endif
else
OPT += -tC
LDFLAGS += -ap
START_OBJ = borinit.o crt1.o
endif
ifdef USE_BCC_DBG_OPTS
# optimization and debug compiler flags
dbg-static : OPT += -R -v -y
dbg-shared : OPT += -R -v -y
stldbg-static : OPT += -R -v -y
stldbg-shared : OPT += -R -v -y
dbg-shared : LDFLAGS += -v
dbg-static : LDFLAGS += -v
stldbg-shared : LDFLAGS += -v
stldbg-static : LDFLAGS += -v
install-dbg-shared: install-dbg-shared-tds
install-stldbg-shared: install-stldbg-shared-tds
install-dbg-static: install-dbg-static-tds
install-stldbg-static: install-stldbg-static-tds
install-dbg-shared-tds:
$(INSTALL_EXE) $(OUTPUT_DIR_DBG)/${PRGNAME}.tds $(INSTALL_BIN_DIR_DBG)/${PRGNAME}.tds
install-stldbg-shared-tds:
$(INSTALL_EXE) $(OUTPUT_DIR_STLDBG)/${PRGNAME}.tds $(INSTALL_BIN_DIR_STLDBG)/${PRGNAME}.tds
install-dbg-static-tds:
$(INSTALL_EXE) $(OUTPUT_DIR_DBG)/${PRGNAME}.tds $(INSTALL_BIN_DIR_DBG)/${PRGNAME}.tds
install-stldbg-static-tds:
$(INSTALL_EXE) $(OUTPUT_DIR_STLDBG)/${PRGNAME}.tds $(INSTALL_BIN_DIR_STLDBG)/${PRGNAME}.tds
else
dbg-shared : OPT += -vi-
dbg-static : OPT += -vi-
stldbg-shared : OPT += -vi-
stldbg-static : OPT += -vi-
endif
PRG_FILES := ${PRGNAME}${EXE} ${PRGNAME}.tds ${PRGNAME}.map
TMP_FILES := test.txt test_file.txt win32_file_format.tmp
clean::
$(foreach d, $(OUTPUT_DIRS), $(foreach f, $(PRG_FILES), @rm -f $(d)/$(f)))
uninstall::
$(foreach d, $(INSTALL_DIRS), $(foreach f, $(PRG_FILES), @rm -f $(d)/$(f)))
$(foreach d, $(INSTALL_DIRS), $(foreach f, $(TMP_FILES), @rm -f $(d)/$(f)))
$(foreach d, $(INSTALL_DIRS), @-rmdir -p $(d) 2>/dev/null)
@@ -0,0 +1,67 @@
# -*- Makefile -*- Time-stamp: <07/05/31 01:05:57 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Copyright (c) 2006, 2007
# Francois Dumont
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
CXXFLAGS += -w6 -w7 -w18
stldbg-shared : CXXFLAGS += -HP50
stldbg-static : CXXFLAGS += -HP50
OPT += -WA
release-shared : LDFLAGS += /DELEXECUTABLE
release-static : LDFLAGS += /DELEXECUTABLE
dbg-shared : LDFLAGS += /DELEXECUTABLE/CODEVIEW/NOCVPACK
dbg-static : LDFLAGS += /DELEXECUTABLE/CODEVIEW/NOCVPACK
stldbg-shared : LDFLAGS += /DELEXECUTABLE/CODEVIEW/NOCVPACK
stldbg-static : LDFLAGS += /DELEXECUTABLE/CODEVIEW/NOCVPACK
# workaround for stl/config/_auto_link.h
STL_LIBNAME = stlport
DBG_SUFFIX := d
STLDBG_SUFFIX := stld
ifdef LIB_MOTIF
LIB_SUFFIX := _$(LIB_MOTIF).${LIBMAJOR}.${LIBMINOR}
else
LIB_SUFFIX := .${LIBMAJOR}.${LIBMINOR}
endif
# Shared libraries:
ifdef WITH_STATIC_RTL
LIB_TYPE := _x
else
LIB_TYPE :=
endif
LIB_NAME := $(LIB_PREFIX)${STL_LIBNAME}${LIB_TYPE}${LIB_SUFFIX}.$(LIB)
LIB_NAME_DBG := $(LIB_PREFIX)${STL_LIBNAME}${DBG_SUFFIX}${LIB_TYPE}${LIB_SUFFIX}.$(LIB)
LIB_NAME_STLDBG := $(LIB_PREFIX)${STL_LIBNAME}${STLDBG_SUFFIX}${LIB_TYPE}${LIB_SUFFIX}.$(LIB)
# Static libraries:
ifdef WITH_DYNAMIC_RTL
A_LIB_TYPE := _statix
else
A_LIB_TYPE := _static
endif
A_NAME := $(LIB_PREFIX)${STL_LIBNAME}${A_LIB_TYPE}${LIB_SUFFIX}.$(ARCH)
A_NAME_DBG := $(LIB_PREFIX)${STL_LIBNAME}${DBG_SUFFIX}${A_LIB_TYPE}${LIB_SUFFIX}.${ARCH}
A_NAME_STLDBG := ${LIB_PREFIX}${STL_LIBNAME}${STLDBG_SUFFIX}${A_LIB_TYPE}${LIB_SUFFIX}.${ARCH}
release-shared : LDLIBS += $(STLPORT_DIR)/lib/$(LIB_NAME)
dbg-shared : LDLIBS += $(STLPORT_DIR)/lib/$(LIB_NAME_DBG)
stldbg-shared : LDLIBS += $(STLPORT_DIR)/lib/$(LIB_NAME_STLDBG)
release-static : LDLIBS += $(STLPORT_DIR)/lib/$(A_NAME)
dbg-static : LDLIBS += $(STLPORT_DIR)/lib/$(A_NAME_DBG)
stldbg-static : LDLIBS += $(STLPORT_DIR)/lib/$(A_NAME_STLDBG)
@@ -0,0 +1,230 @@
# -*- Makefile -*- Time-stamp: <08/06/12 16:03:31 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifndef NOT_USE_NOSTDLIB
ifeq ($(CXX_VERSION_MAJOR),2)
# i.e. gcc before 3.x.x: 2.95, etc.
# gcc before 3.x don't had libsupc++.a and libgcc_s.so
# exceptions and operators new are in libgcc.a
# Unfortunatly gcc before 3.x has a buggy C++ language support outside stdc++, so definition of STDLIB below is commented
NOT_USE_NOSTDLIB := 1
#STDLIBS := $(shell ${CXX} -print-file-name=libgcc.a) -lpthread -lc -lm
endif
ifeq ($(CXX_VERSION_MAJOR),3)
# gcc before 3.3 (i.e. 3.0.x, 3.1.x, 3.2.x) has buggy libsupc++, so we should link with libstdc++ to avoid one
ifeq ($(CXX_VERSION_MINOR),0)
NOT_USE_NOSTDLIB := 1
endif
ifeq ($(CXX_VERSION_MINOR),1)
NOT_USE_NOSTDLIB := 1
endif
ifeq ($(CXX_VERSION_MINOR),2)
NOT_USE_NOSTDLIB := 1
endif
endif
endif
ifndef NOT_USE_NOSTDLIB
ifeq ($(OSNAME),linux)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),openbsd)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),freebsd)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),netbsd)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),sunos)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),darwin)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),cygming)
_USE_NOSTDLIB := 1
endif
endif
ifndef WITHOUT_STLPORT
ifeq (${STLPORT_LIB_DIR},)
ifneq ($(OSNAME),cygming)
release-shared: STLPORT_LIB = -lstlport
release-static: STLPORT_LIB = -Wl,-Bstatic -lstlport -Wl,-Bdynamic
dbg-shared: STLPORT_LIB = -lstlportg
dbg-static: STLPORT_LIB = -Wl,-Bstatic -lstlportg -Wl,-Bdynamic
stldbg-shared: STLPORT_LIB = -lstlportstlg
stldbg-static: STLPORT_LIB = -Wl,-Bstatic -lstlportstlg -Wl,-Bdynamic
else
LIB_VERSION = ${LIBMAJOR}.${LIBMINOR}
release-shared : STLPORT_LIB = -lstlport.${LIB_VERSION}
dbg-shared : STLPORT_LIB = -lstlportg.${LIB_VERSION}
stldbg-shared : STLPORT_LIB = -lstlportstlg.${LIB_VERSION}
endif
else
# STLPORT_LIB_DIR not empty
ifneq ($(OSNAME),cygming)
release-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlport
release-static: STLPORT_LIB = -L${STLPORT_LIB_DIR} -Wl,-Bstatic -lstlport -Wl,-Bdynamic
dbg-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlportg
dbg-static: STLPORT_LIB = -L${STLPORT_LIB_DIR} -Wl,-Bstatic -lstlportg -Wl,-Bdynamic
stldbg-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlportstlg
stldbg-static: STLPORT_LIB = -L${STLPORT_LIB_DIR} -Wl,-Bstatic -lstlportstlg -Wl,-Bdynamic
else
LIB_VERSION = ${LIBMAJOR}.${LIBMINOR}
release-shared : STLPORT_LIB = -L${BASE_INSTALL_DIR}/lib -lstlport.${LIB_VERSION}
dbg-shared : STLPORT_LIB = -L${BASE_INSTALL_DIR}/lib -lstlportg.${LIB_VERSION}
stldbg-shared : STLPORT_LIB = -L${BASE_INSTALL_DIR}/lib -lstlportstlg.${LIB_VERSION}
endif
endif
endif
ifdef _USE_NOSTDLIB
# Check whether gcc builded with --disable-shared
ifeq ($(shell ${CXX} ${CXXFLAGS} -print-file-name=libgcc_eh.a),libgcc_eh.a)
# gcc builded with --disable-shared, (no library libgcc_eh.a); all exception support in libgcc.a
_LGCC_EH :=
_LGCC_S := -lgcc
else
# gcc builded with --enable-shared (default)
ifdef USE_STATIC_LIBGCC
# if force usage of static libgcc, then exceptions support should be taken from libgcc_eh
_LGCC_EH := -lgcc_eh
_LGCC_S := -lgcc
else
# otherwise, exceptions support is in libgcc_s.so
_LGCC_EH :=
ifneq ($(OSNAME),darwin)
_LGCC_S := -lgcc_s
else
ifdef GCC_APPLE_CC
ifeq ($(MACOSX_TEN_FIVE),true)
_LGCC_S := -lgcc_s.10.5
else
_LGCC_S := -lgcc_s.10.4
endif
else
_LGCC_S := -lgcc_s
# end of GCC_APPLE_CC
endif
# end of Darwin
endif
# end of !USE_STATIC_LIBGCC
endif
# end of present libgcc_eh.a
endif
# ifeq ($(CXX_VERSION_MAJOR),3)
ifeq ($(OSNAME),linux)
START_OBJ := $(shell for o in crt1.o crti.o crtbegin.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtend.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),openbsd)
START_OBJ := $(shell for o in crt0.o crtbegin.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtend.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),freebsd)
# FreeBSD < 5.3 should use -lc_r, while FreeBSD >= 5.3 use -lpthread
PTHR := $(shell if [ ${OSREL_MAJOR} -gt 5 ] ; then echo "pthread" ; else if [ ${OSREL_MAJOR} -lt 5 ] ; then echo "c_r" ; else if [ ${OSREL_MINOR} -lt 3 ] ; then echo "c_r" ; else echo "pthread"; fi ; fi ; fi)
START_OBJ := $(shell for o in crt1.o crti.o crtbegin.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtend.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -l${PTHR} -lc -lm
endif
ifeq ($(OSNAME),netbsd)
START_OBJ := $(shell for o in crt1.o crti.o crtbegin.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtend.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),sunos)
START_OBJ := $(shell for o in crt1.o crti.o crtbegin.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtend.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),darwin)
# sometimes crt3.o will required: it has __cxa_at_exit, but the same defined in libc.dyn
# at least in Mac OS X 10.4.10 (8R2218)
ifeq ($(CXX_VERSION_MAJOR),3)
# i.e. gcc 3.3
START_OBJ := $(shell for o in crt1.o crt2.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
else
START_OBJ := -lcrt1.o
endif
END_OBJ :=
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -lpthread -lc -lm -lsupc++ ${_LGCC_EH}
#LDFLAGS += -dynamic
endif
ifeq ($(OSNAME),cygming)
LDFLAGS += -nodefaultlibs
ifndef USE_STATIC_LIBGCC
ifeq ($(shell ${CXX} ${CXXFLAGS} -print-file-name=libgcc_s.a),libgcc_s.a)
_LGCC_S := -lgcc
else
_LGCC_S := -lgcc_s
endif
else
_LGCC_S := -lgcc
endif
ifeq ($(OSREALNAME),mingw)
STDLIBS = ${STLPORT_LIB} -lsupc++ ${_LGCC_S} -lmingw32 -lmingwex -lmsvcrt -lm -lmoldname -lcoldname -lkernel32
else
LDFLAGS += -Wl,-enable-auto-import
ifneq (,$(findstring no-cygwin,$(EXTRA_CXXFLAGS)))
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -lmingw32 -lmingwex -lmsvcrt -lm -lmoldname -lcoldname -lkernel32
else
STDLIBS = ${STLPORT_LIB} ${_LGCC_S} -lm -lc -lpthread -lkernel32
endif
endif
else
LDFLAGS += -nostdlib
endif
# endif
# _USE_NOSTDLIB
else
ifndef USE_STATIC_LIBGCC
release-shared : LDFLAGS += -shared-libgcc
dbg-shared : LDFLAGS += -shared-libgcc
stldbg-shared : LDFLAGS += -shared-libgcc
endif
ifndef WITHOUT_STLPORT
STDLIBS = ${STLPORT_LIB}
else
STDLIBS =
endif
endif
# workaround for gcc 2.95.x bug:
ifeq ($(CXX_VERSION_MAJOR),2)
ifneq ($(OSNAME),cygming)
OPT += -fPIC
endif
endif
@@ -0,0 +1,10 @@
# -*- Makefile -*- Time-stamp: <07/03/08 21:55:41 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
@@ -0,0 +1,66 @@
# -*- makefile -*- Time-stamp: <06/12/12 09:37:04 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifndef WITHOUT_STLPORT
install: install-release-shared install-dbg-shared install-stldbg-shared
else
install: install-release-shared install-dbg-shared
endif
INSTALL_PRGNAME_CMD =
INSTALL_PRGNAME_CMD_DBG =
INSTALL_PRGNAME_CMD_STLDBG =
define prog_install
INSTALL_$(1)_PRGNAME := $(1)${EXE}
INSTALL_PRGNAME_CMD += $$(INSTALL_EXE) $${$(1)_PRG} $$(INSTALL_BIN_DIR)/$${INSTALL_$(1)_PRGNAME}; \
INSTALL_$(1)_PRGNAME_DBG := $${INSTALL_$(1)_PRGNAME}
INSTALL_PRGNAME_CMD_DBG += $$(INSTALL_EXE) $${$(1)_PRG_DBG} $$(INSTALL_BIN_DIR_DBG)/$${INSTALL_$(1)_PRGNAME_DBG}; \
ifndef WITHOUT_STLPORT
INSTALL_$(1)_PRGNAME_STLDBG := $${INSTALL_$(1)_PRGNAME}
INSTALL_PRGNAME_CMD_STLDBG += $$(INSTALL_EXE) $${$(1)_PRG_STLDBG} $$(INSTALL_BIN_DIR_STLDBG)/$${INSTALL_$(1)_PRGNAME_STLDBG}; \
endif
endef
INSTALL_PRGNAME := ${PRGNAME}${EXE}
$(foreach prg,$(PRGNAMES),$(eval $(call prog_install,$(prg))))
INSTALL_PRGNAME_DBG := ${INSTALL_PRGNAME}
ifndef WITHOUT_STLPORT
INSTALL_PRGNAME_STLDBG := ${INSTALL_PRGNAME}
endif
install-release-shared: release-shared $(INSTALL_BIN_DIR)
ifdef PRGNAME
$(INSTALL_EXE) ${PRG} $(INSTALL_BIN_DIR)/${INSTALL_PRGNAME}
endif
$(INSTALL_PRGNAME_CMD)
$(POST_INSTALL)
install-dbg-shared: dbg-shared $(INSTALL_BIN_DIR_DBG)
ifdef PRGNAME
$(INSTALL_EXE) ${PRG_DBG} $(INSTALL_BIN_DIR_DBG)/${INSTALL_PRGNAME_DBG}
endif
$(INSTALL_PRGNAME_CMD_DBG)
$(POST_INSTALL_DBG)
ifndef WITHOUT_STLPORT
install-stldbg-shared: stldbg-shared $(INSTALL_BIN_DIR_STLDBG)
ifdef PRGNAME
$(INSTALL_EXE) ${PRG_STLDBG} $(INSTALL_BIN_DIR_STLDBG)/${INSTALL_PRGNAME_STLDBG}
endif
$(INSTALL_PRGNAME_CMD_STLDBG)
$(POST_INSTALL_STLDBG)
endif
@@ -0,0 +1,92 @@
# -*- makefile -*- Time-stamp: <06/11/17 10:34:26 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
dbg-shared: $(EXTRA_PRE_DBG) $(OUTPUT_DIR_DBG) ${PRG_DBG} ${ALLPRGS_DBG} $(EXTRA_POST_DBG)
dbg-static: $(EXTRA_PRE_DBG) $(OUTPUT_DIR_DBG) ${PRG_DBG} ${ALLPRGS_DBG} $(EXTRA_POST_DBG)
release-shared: $(EXTRA_PRE) $(OUTPUT_DIR) ${PRG} ${ALLPRGS} $(EXTRA_POST)
release-static: $(EXTRA_PRE) $(OUTPUT_DIR) ${PRG} ${ALLPRGS} $(EXTRA_POST)
ifndef WITHOUT_STLPORT
stldbg-shared: $(EXTRA_PRE_STLDBG) $(OUTPUT_DIR_STLDBG) ${PRG_STLDBG} ${ALLPRGS_STLDBG} $(EXTRA_POST_STLDBG)
stldbg-static: $(EXTRA_PRE_STLDBG) $(OUTPUT_DIR_STLDBG) ${PRG_STLDBG} ${ALLPRGS_STLDBG} $(EXTRA_POST_STLDBG)
endif
ifeq ("$(findstring $(COMPILER_NAME),bcc dmc)","")
define cpplnk_str
$(LINK.cc) $(LINK_OUTPUT_OPTION) ${START_OBJ} $(1) $(LDLIBS) ${STDLIBS} ${END_OBJ}
endef
else
ifneq ($(OSNAME),linux)
define cpplnk_str
$(LINK.cc) $(subst /,\\,${START_OBJ} $(1) ${END_OBJ}, $(LINK_OUTPUT_OPTION), $(MAP_OUTPUT_OPTION), $(LDLIBS) ${STDLIBS},,)
endef
else
define cpplnk_str
$(LINK.cc) ${START_OBJ} $(1) ${END_OBJ}, $(LINK_OUTPUT_OPTION), $(MAP_OUTPUT_OPTION), $(LDLIBS) ${STDLIBS},,
endef
endif
endif
define prog_lnk
ifeq ($${_$(1)_C_SOURCES_ONLY},)
$${$(1)_PRG}: $$($(1)_OBJ) $$(LIBSDEP)
$$(call cpplnk_str,$$($(1)_OBJ))
$${$(1)_PRG_DBG}: $$($(1)_OBJ_DBG) $$(LIBSDEP)
$$(call cpplnk_str,$$($(1)_OBJ_DBG))
ifndef WITHOUT_STLPORT
$${$(1)_PRG_STLDBG}: $$($(1)_OBJ_STLDBG) $$(LIBSDEP)
$$(call cpplnk_str,$$($(1)_OBJ_STLDBG))
endif
else
$${$(1)_PRG}: $$($(1)_OBJ) $$(LIBSDEP)
$$(LINK.c) $$(LINK_OUTPUT_OPTION) $$($(1)_OBJ) $$(LDLIBS)
$${$(1)_PRG_DBG}: $$(OBJ_DBG) $$(LIBSDEP)
$$(LINK.c) $$(LINK_OUTPUT_OPTION) $$($(1)_OBJ_DBG) $$(LDLIBS)
ifndef WITHOUT_STLPORT
$${$(1)_PRG_STLDBG}: $$($(1)_OBJ_STLDBG) $$(LIBSDEP)
$$(LINK.c) $$(LINK_OUTPUT_OPTION) $$($(1)_OBJ_STLDBG) $$(LDLIBS)
endif
endif
endef
$(foreach prg,$(PRGNAMES),$(eval $(call prog_lnk,$(prg))))
ifeq ("${_C_SOURCES_ONLY}","")
${PRG}: $(OBJ) $(LIBSDEP)
$(call cpplnk_str,$(OBJ))
${PRG_DBG}: $(OBJ_DBG) $(LIBSDEP)
$(call cpplnk_str,$(OBJ_DBG))
ifndef WITHOUT_STLPORT
${PRG_STLDBG}: $(OBJ_STLDBG) $(LIBSDEP)
$(call cpplnk_str,$(OBJ_STLDBG))
endif
else
${PRG}: $(OBJ) $(LIBSDEP)
$(LINK.c) $(LINK_OUTPUT_OPTION) $(OBJ) $(LDLIBS)
${PRG_DBG}: $(OBJ_DBG) $(LIBSDEP)
$(LINK.c) $(LINK_OUTPUT_OPTION) $(OBJ_DBG) $(LDLIBS)
ifndef WITHOUT_STLPORT
${PRG_STLDBG}: $(OBJ_STLDBG) $(LIBSDEP)
$(LINK.c) $(LINK_OUTPUT_OPTION) $(OBJ_STLDBG) $(LDLIBS)
endif
endif
@@ -0,0 +1,61 @@
# -*- makefile -*- Time-stamp: <08/06/12 15:54:12 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifdef PRGNAME
PRG := $(OUTPUT_DIR)/${PRGNAME}${EXE}
PRG_DBG := $(OUTPUT_DIR_DBG)/${PRGNAME}${EXE}
PRG_STLDBG := $(OUTPUT_DIR_STLDBG)/${PRGNAME}${EXE}
endif
ALLPRGS = ${PRG}
ALLPRGS_DBG = ${PRG_DBG}
ALLPRGS_STLDBG = ${PRG_STLDBG}
define prog_prog
$(1)_PRG := $(OUTPUT_DIR)/$(1)${EXE}
$(1)_PRG_DBG := $(OUTPUT_DIR_DBG)/$(1)${EXE}
$(1)_PRG_STLDBG := $(OUTPUT_DIR_STLDBG)/$(1)${EXE}
ALLPRGS += $${$(1)_PRG}
ALLPRGS_DBG += $${$(1)_PRG_DBG}
ALLPRGS_STLDBG += $${$(1)_PRG_STLDBG}
endef
$(foreach prg,$(PRGNAMES),$(eval $(call prog_prog,$(prg))))
include ${RULESBASE}/gmake/app/${COMPILER_NAME}.mak
include ${RULESBASE}/gmake/app/rules.mak
include ${RULESBASE}/gmake/app/rules-install.mak
define prog_clean
clean::
@rm -f $${$(1)_PRG} $${$(1)_PRG_DBG} $${$(1)_PRG_STLDBG}
uninstall::
@rm -f $$(INSTALL_BIN_DIR)/$$($(1)_PRG) $$(INSTALL_BIN_DIR_DBG)/$$($(1)_PRG_DBG) $$(INSTALL_BIN_DIR_STLDBG)/$$($(1)_PRG_STLDBG)
endef
clean::
ifdef PRGNAME
@-rm -f ${PRG} ${PRG_DBG} ${PRG_STLDBG}
endif
$(foreach prg,$(PRGNAMES),$(eval $(call prog_clean,$(prg))))
distclean::
@-rm -f $(DEPENDS_COLLECTION)
@-rmdir -p ${OUTPUT_DIR} ${OUTPUT_DIR_DBG} ${OUTPUT_DIR_STLDBG} 2>/dev/null
uninstall::
ifdef PRGNAME
@-rm -f $(INSTALL_BIN_DIR)/${PRGNAME}${EXE} $(INSTALL_BIN_DIR_DBG)/${PRGNAME}${EXE} $(INSTALL_BIN_DIR_STLDBG)/${PRGNAME}${EXE}
endif
@-rmdir -p $(INSTALL_BIN_DIR) $(INSTALL_BIN_DIR_DBG) $(INSTALL_BIN_DIR_STLDBG) 2>/dev/null
+258
View File
@@ -0,0 +1,258 @@
# Time-stamp: <07/05/31 01:03:15 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Copyright (c) 2006, 2007
# Francois Dumont
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ALL_TAGS = all-static all-shared
ifdef LIBNAME
INSTALL_TAGS = install-static install-shared
else
INSTALL_TAGS = install-shared
endif
ifneq ($(OSNAME),linux)
# For Borland Cygwin/MSys are only build environment, they do not represent
# the targetted OS so per default we keep all generated files in STLport
# folder.
BASE_INSTALL_DIR ?= ${STLPORT_DIR}
CXX := bcc32
CC := bcc32
RC := brcc32
DEFS ?=
OPT ?=
CFLAGS = -q -ff
CXXFLAGS = -q -ff
OPT += -w-ccc -w-rch -w-ngu -w-inl -w-eff
# release-shared : OPT += -w-inl
ifdef WITH_DYNAMIC_RTL
release-static : OPT += -tWR
dbg-static : OPT += -tWR
stldbg-static : OPT += -tWR
endif
ifndef WITH_STATIC_RTL
release-shared : OPT += -tWR
dbg-shared : OPT += -tWR
stldbg-shared : OPT += -tWR
endif
ifdef WITHOUT_RTTI
OPT += -RT-
endif
ifndef WITHOUT_THREAD
OPT += -tWM
endif
WINVER ?= 0x0501
DEFS += -DWINVER=$(WINVER)
OUTPUT_OPTION = -o$@
LINK_OUTPUT_OPTION = $@
CPPFLAGS = $(DEFS) $(OPT) $(INCLUDES)
CDEPFLAGS = -E -M
CCDEPFLAGS = -E -M
RCFLAGS = -32 -r -i${STLPORT_INCLUDE_DIR} -dCOMP=bcc
release-shared : RCFLAGS += -dBUILD_INFOS="-O2 -vi-"
dbg-shared : RCFLAGS += -dBUILD=d -dBUILD_INFOS="-R -v -y -D_DEBUG"
stldbg-shared : RCFLAGS += -dBUILD=stld -dBUILD_INFOS="-R -v -y -D_DEBUG -D_STLP_DEBUG"
RC_OUTPUT_OPTION = -fo$@
COMPILE.rc = ${RC} ${RCFLAGS}
LINK.cc = ilink32 $(subst /,\\,$(LDFLAGS))
LDFLAGS += -ap -D -Gn
dbg-static : DEFS += -D_DEBUG
dbg-shared : DEFS += -D_DEBUG
stldbg-static : DEFS += -D_DEBUG
stldbg-shared : DEFS += -D_DEBUG
# STLport DEBUG mode specific defines
stldbg-static : DEFS += -D_STLP_DEBUG
stldbg-shared : DEFS += -D_STLP_DEBUG
stldbg-static-dep : DEFS += -D_STLP_DEBUG
stldbg-shared-dep : DEFS += -D_STLP_DEBUG
# optimization and debug compiler flags
release-static : OPT += -O2 -vi-
release-shared : OPT += -O2 -vi-
LDLIBS += import32.lib kernel32.lib
ifndef WITHOUT_THREAD
ifndef WITH_STATIC_RTL
release-shared : LDLIBS += cw32mti.lib
dbg-shared : LDLIBS += cw32mti.lib
stldbg-shared : LDLIBS += cw32mti.lib
else
release-shared : LDLIBS += cw32mt.lib
dbg-shared : LDLIBS += cw32mt.lib
stldbg-shared : LDLIBS += cw32mt.lib
endif
ifndef WITH_DYNAMIC_RTL
release-static : LDLIBS += cw32mt.lib
dbg-static : LDLIBS += cw32mt.lib
stldbg-static : LDLIBS += cw32mt.lib
else
release-static : LDLIBS += cw32mti.lib
dbg-static : LDLIBS += cw32mti.lib
stldbg-static : LDLIBS += cw32mti.lib
endif
else
ifndef WITH_STATIC_RTL
release-shared : LDLIBS += cw32i.lib
dbg-shared : LDLIBS += cw32i.lib
stldbg-shared : LDLIBS += cw32i.lib
else
release-shared : LDLIBS += cw32.lib
dbg-shared : LDLIBS += cw32.lib
stldbg-shared : LDLIBS += cw32.lib
endif
ifndef WITH_DYNAMIC_RTL
release-static : LDLIBS += cw32.lib
dbg-static : LDLIBS += cw32.lib
stldbg-static : LDLIBS += cw32.lib
else
release-static : LDLIBS += cw32i.lib
dbg-static : LDLIBS += cw32i.lib
stldbg-static : LDLIBS += cw32i.lib
endif
endif
# map output option (see build/Makefiles/gmake/dmc.mak)
MAP_OUTPUT_OPTION =
else # linux
CXX := bc++
CC := bc++
DEFS ?=
OPT ?=
CFLAGS = -q -ff -xp -w-par
CXXFLAGS = -q -ff -xp -w-aus
DEFS += -D_NO_VCL
release-shared: DEFS += -D_RTLDLL
dbg-shared: DEFS += -D_RTLDLL
stldbg-shared: DEFS += -D_RTLDLL
OPT += -w-ccc -w-rch -w-ngu -w-inl -w-eff
ifdef WITHOUT_RTTI
OPT += -RT-
endif
ifndef WITHOUT_THREAD
DEFS += -D__MT__
endif
OUTPUT_OPTION = -o$@
LINK_OUTPUT_OPTION = $@
CPPFLAGS = $(DEFS) $(OPT) $(INCLUDES)
LINK.cc = ilink $(LDFLAGS)
LDFLAGS += -Gn
dbg-static : DEFS += -D_DEBUG
dbg-shared : DEFS += -D_DEBUG
stldbg-static : DEFS += -D_DEBUG
stldbg-shared : DEFS += -D_DEBUG
# STLport DEBUG mode specific defines
stldbg-static : DEFS += -D_STLP_DEBUG
stldbg-shared : DEFS += -D_STLP_DEBUG
stldbg-static-dep : DEFS += -D_STLP_DEBUG
stldbg-shared-dep : DEFS += -D_STLP_DEBUG
# optimization and debug compiler flags
release-static : OPT += -O2 -vi-
release-shared : OPT += -O2 -vi-
dbg-static : OPT += -R -v -y
dbg-shared : OPT += -R -v -y
stldbg-static : OPT += -R -v -y
stldbg-shared : OPT += -R -v -y
ifndef WITHOUT_THREAD
ifdef LIBNAME
release-shared : LDLIBS += libborcrtl.so libborunwind.so libpthread.so.0 libc.so.6 libm.so libdl.so libc_nonshared.a
dbg-shared : LDLIBS += libborcrtl.so libborunwind.so libpthread.so.0 libc.so.6 libm.so libdl.so libc_nonshared.a
stldbg-shared : LDLIBS += libborcrtl.so libborunwind.so libpthread.so.0 libc.so.6 libm.so libdl.so libc_nonshared.a
endif
ifdef PRGNAME
release-shared : LDLIBS += libborcrtl.so libborunwind.so libpthread.so.0 libc.so.6 libm.so libdl.so ../../../lib/libstlport.so
dbg-shared : LDLIBS += libborcrtl.so libborunwind.so libpthread.so.0 libc.so.6 libm.so libdl.so ../../../lib/libstlportg.so
stldbg-shared : LDLIBS += libborcrtl.so libborunwind.so libpthread.so.0 libc.so.6 libm.so libdl.so ../../../lib/libstlportstlg.so
release-static : LDLIBS += libborcrtl.a libborunwind.a libpthread.so.0 libc.so.6 libm.so libdl.so libc_nonshared.a ../../../lib/libstlport.a
dbg-static : LDLIBS += libborcrtl.a libborunwind.a libpthread.so.0 libc.so.6 libm.so libdl.so libc_nonshared.a ../../../lib/libstlportg.a
stldbg-static : LDLIBS += libborcrtl.a libborunwind.a libpthread.so.0 libc.so.6 libm.so libdl.so libc_nonshared.a ../../../lib/libstlportstlg.a
endif
else # single-threaded
ifdef LIBNAME
release-shared : LDLIBS += libborcrtl.so libborunwind.so libc.so.6 libm.so libdl.so libc_nonshared.a
dbg-shared : LDLIBS += libborcrtl.so libborunwind.so libc.so.6 libm.so libdl.so libc_nonshared.a
stldbg-shared : LDLIBS += libborcrtl.so libborunwind.so libc.so.6 libm.so libdl.so libc_nonshared.a
endif
ifdef PRGNAME
release-shared : LDLIBS += libborcrtl.so libborunwind.so libc.so.6 libm.so libdl.so ../../../lib/libstlport.so
dbg-shared : LDLIBS += libborcrtl.so libborunwind.so libc.so.6 libm.so libdl.so ../../../lib/libstlportg.so
stldbg-shared : LDLIBS += libborcrtl.so libborunwind.so libc.so.6 libm.so libdl.so ../../../lib/libstlportstlg.so
release-static : LDLIBS += libborcrtl.a libborunwind.a libc.so.6 libm.so libdl.so libc_nonshared.a ../../../lib/libstlport.a
dbg-static : LDLIBS += libborcrtl.a libborunwind.a libc.so.6 libm.so libdl.so libc_nonshared.a ../../../lib/libstlportg.a
stldbg-static : LDLIBS += libborcrtl.a libborunwind.a libc.so.6 libm.so libdl.so libc_nonshared.a ../../../lib/libstlportst$
endif
endif
# install dir defaults to /usr/local unless defined
BASE_INSTALL_DIR ?= ${SRCROOT}/..
endif # linux
ifdef EXTRA_CXXFLAGS
CXXFLAGS += $(EXTRA_CXXFLAGS)
endif
ifdef EXTRA_CFLAGS
CFLAGS += $(EXTRA_CFLAGS)
endif
# dependency output parser (dependencies collector)
DP_OUTPUT_DIR = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_DBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_DBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_STLDBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_STLDBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
@@ -0,0 +1,48 @@
# -*- Makefile -*- Time-stamp: <07/05/31 22:18:20 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
PHONY += clean distclean mostlyclean maintainer-clean uninstall
define obj_clean
clean::
@-rm -f $$($(1)_OBJ) $$($(1)_DEP)
@-rm -f $$($(1)_OBJ_DBG) $$($(1)_DEP_DBG)
@-rm -f $$($(1)_OBJ_STLDBG) $$($(1)_DEP_STLDBG)
endef
clean::
@-rm -f core core.*
ifdef PRGNAME
@-rm -f $(OBJ) $(DEP)
@-rm -f $(OBJ_DBG) $(DEP_DBG)
@-rm -f $(OBJ_STLDBG) $(DEP_STLDBG)
endif
ifdef LIBNAME
@-rm -f $(OBJ) $(DEP) $(_LSUPCPP_AUX_OBJ) $(_LSUPCPP_AUX_TSMP)
@-rm -f $(OBJ_DBG) $(DEP_DBG)
@-rm -f $(OBJ_STLDBG) $(DEP_STLDBG)
endif
$(foreach prg,$(PRGNAMES),$(eval $(call obj_clean,$(prg))))
$(foreach prg,$(LIBNAMES),$(eval $(call obj_clean,$(prg))))
distclean:: clean
# $(DEPENDS_COLLECTION) removed before directory,
# see app/clean.mak and lib/clean.mak
mostlyclean:: clean
@-rm -f $(DEPENDS_COLLECTION)
@-rm -f TAGS tags
maintainer-clean:: distclean
@rm -f ${RULESBASE}/gmake/config.mak
@-rm -f TAGS tags
@@ -0,0 +1,63 @@
# Time-stamp: <03/07/31 14:20:16 ptr>
# $Id: extern.mak 1459 2005-04-18 21:25:32Z ptr $
# This is Complement project (really not extern):
CoMT_LIB_DIR ?= ${INSTALL_LIB_DIR}
CoMT_LIB_DIR_DBG ?= ${INSTALL_LIB_DIR_DBG}
CoMT_LIB_DIR_STLDBG ?= ${INSTALL_LIB_DIR_STLDBG}
CoMT_BIN_DIR ?= ${INSTALL_BIN_DIR}
CoMT_BIN_DIR_DBG ?= ${INSTALL_BIN_DIR}
CoMT_BIN_DIR_STLDBG ?= ${INSTALL_BIN_DIR}
CoMT_INCLUDE_DIR ?= ${CoMT_DIR}/include
# This file reflect versions of third-party libraries that
# used in projects
# STLport library
#STLPORT_LIB_DIR ?= /usr/local/lib
#STLPORT_INCLUDE_DIR ?= /usr/local/include/stlport
#STLPORT_VER ?= 4.5
STLPORT_LIB_DIR ?= $(STLPORT_DIR)/lib
STLPORT_INCLUDE_DIR ?= $(STLPORT_DIR)/stlport
STLPORT_VER ?= 4.5.5
# PostgreSQL library version:
PG_INCLUDE ?= $(PG_DIR)/include
PG_LIB ?= $(PG_DIR)/lib
PG_LIB_VER_MAJOR = 2
PG_LIB_VER_MINOR = 1
# Readline libraries version:
RL_INCLUDE ?= /usr/local/include/readline
RL_LIB ?= /usr/local/lib
RL_LIB_VER_MAJOR = 4
RL_LIB_VER_MINOR = 2
# gSOAP (http://gsoap2.sourceforge.net)
gSOAP_INCLUDE_DIR ?= ${gSOAP_DIR}/include
gSOAP_LIB_DIR ?= ${gSOAP_DIR}/lib
gSOAP_BIN_DIR ?= ${gSOAP_DIR}/bin
# boost (http://www.boost.org, http://boost.sourceforge.net)
BOOST_INCLUDE_DIR ?= ${BOOST_DIR}
# This file reflect versions of third-party libraries that
# used in projects, with make-depend style
ifeq ($(OSNAME),sunos)
PG_DIR ?= /opt/PGpgsql
endif
ifeq ($(OSNAME),linux)
PG_DIR ?= /usr/local/pgsql
endif
gSOAP_DIR ?= /opt/gSOAP-2.2.3
BOOST_DIR ?= ${SRCROOT}/../extern/boost
STLPORT_DIR ?= e:/STLlab/STLport
CoMT_DIR ?= ${SRCROOT}
@@ -0,0 +1,82 @@
# -*- makefile -*- Time-stamp: <03/07/15 18:23:04 ptr>
# $Id: lib.mak 3023 2007-05-16 20:01:32Z dums $
LIB_PREFIX ?=
ifeq (gcc, $(COMPILER_NAME))
LIB_PREFIX := lib
endif
ifeq (gcc, $(COMPILER_NAME))
DBG_SUFFIX := g
else
DBG_SUFFIX := d
endif
STLDBG_SUFFIX := stl${DBG_SUFFIX}
ifdef WITH_STATIC_RTL
LIB_TYPE := _x
else
LIB_TYPE :=
endif
ifdef LIB_MOTIF
LIB_SUFFIX := _$(LIB_MOTIF).${MAJOR}.${MINOR}
else
LIB_SUFFIX := .${MAJOR}.${MINOR}
endif
# Shared libraries:
SO_NAME_BASE := $(LIB_PREFIX)${LIBNAME}${LIB_TYPE}${LIB_SUFFIX}
SO_NAME := ${SO_NAME_BASE}.$(SO)
LIB_NAME := ${SO_NAME_BASE}.$(LIB)
#EXP_NAME := ${SO_NAME_BASE}.$(EXP)
SO_NAME_OUT := $(OUTPUT_DIR)/${SO_NAME}
LIB_NAME_OUT := $(OUTPUT_DIR)/${LIB_NAME}
#EXP_NAME_OUT := $(OUTPUT_DIR)/${EXP_NAME}
SO_NAME_DBG_BASE := $(LIB_PREFIX)${LIBNAME}${DBG_SUFFIX}${LIB_TYPE}${LIB_SUFFIX}
SO_NAME_DBG := ${SO_NAME_DBG_BASE}.$(SO)
LIB_NAME_DBG := ${SO_NAME_DBG_BASE}.$(LIB)
#EXP_NAME_DBG := ${SO_NAME_DBG_BASE}.$(EXP)
SO_NAME_OUT_DBG := $(OUTPUT_DIR_DBG)/${SO_NAME_DBG}
LIB_NAME_OUT_DBG := $(OUTPUT_DIR_DBG)/${LIB_NAME_DBG}
#EXP_NAME_OUT_DBG := $(OUTPUT_DIR_DBG)/${EXP_NAME_DBG}
SO_NAME_STLDBG_BASE := $(LIB_PREFIX)${LIBNAME}${STLDBG_SUFFIX}${LIB_TYPE}${LIB_SUFFIX}
SO_NAME_STLDBG := ${SO_NAME_STLDBG_BASE}.$(SO)
LIB_NAME_STLDBG := ${SO_NAME_STLDBG_BASE}.$(LIB)
#EXP_NAME_STLDBG := ${SO_NAME_STLDBG_BASE}.$(EXP)
SO_NAME_OUT_STLDBG := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBG}
LIB_NAME_OUT_STLDBG := $(OUTPUT_DIR_STLDBG)/${LIB_NAME_STLDBG}
#EXP_NAME_OUT_STLDBG := $(OUTPUT_DIR_STLDBG)/${EXP_NAME_STLDBG}
# Static libraries:
ifeq (gcc, $(COMPILER_NAME))
A_LIB_TYPE :=
else
ifdef WITH_DYNAMIC_RTL
A_LIB_TYPE := _statix
else
A_LIB_TYPE := _static
endif
endif
ifdef LIB_MOTIF
LIB_A_SUFFIX := _$(LIB_MOTIF)
else
LIB_A_SUFFIX :=
endif
A_NAME := $(LIB_PREFIX)${LIBNAME}${A_LIB_TYPE}${LIB_A_SUFFIX}.$(ARCH)
A_NAME_OUT := $(OUTPUT_DIR_A)/$(A_NAME)
A_NAME_DBG := $(LIB_PREFIX)${LIBNAME}${DBG_SUFFIX}${A_LIB_TYPE}${LIB_A_SUFFIX}.${ARCH}
A_NAME_OUT_DBG := $(OUTPUT_DIR_A_DBG)/$(A_NAME_DBG)
A_NAME_STLDBG := ${LIB_PREFIX}${LIBNAME}${STLDBG_SUFFIX}${A_LIB_TYPE}${LIB_A_SUFFIX}.${ARCH}
A_NAME_OUT_STLDBG := $(OUTPUT_DIR_A_STLDBG)/$(A_NAME_STLDBG)
@@ -0,0 +1,23 @@
# -*- makefile -*- Time-stamp: <05/12/09 01:46:01 ptr>
INSTALL_TAGS ?= install-shared
PHONY += install $(INSTALL_TAGS)
install: $(INSTALL_TAGS)
install-release-shared: release-shared $(INSTALL_BIN_DIR) $(INSTALL_LIB_DIR)
$(INSTALL_SO) ${SO_NAME_OUT} $(INSTALL_BIN_DIR)/
$(INSTALL_SO) ${LIB_NAME_OUT} $(INSTALL_LIB_DIR)/
# $(INSTALL_SO) ${EXP_NAME_OUT} $(INSTALL_LIB_DIR)/
install-dbg-shared: dbg-shared $(INSTALL_BIN_DIR) $(INSTALL_LIB_DIR_DBG)
$(INSTALL_SO) ${SO_NAME_OUT_DBG} $(INSTALL_BIN_DIR)/
$(INSTALL_SO) ${LIB_NAME_OUT_DBG} $(INSTALL_LIB_DIR_DBG)/
# $(INSTALL_SO) ${EXP_NAME_OUT_DBG} $(INSTALL_LIB_DIR_DBG)/
install-stldbg-shared: stldbg-shared $(INSTALL_BIN_DIR) $(INSTALL_LIB_DIR_DBG)
$(INSTALL_SO) ${SO_NAME_OUT_STLDBG} $(INSTALL_BIN_DIR)/
$(INSTALL_SO) ${LIB_NAME_OUT_STLDBG} $(INSTALL_LIB_DIR_STLDBG)/
# $(INSTALL_SO) ${EXP_NAME_OUT_STLDBG} $(INSTALL_LIB_DIR_STLDBG)/
@@ -0,0 +1,91 @@
# -*- makefile -*- Time-stamp: <03/10/27 18:15:05 ptr>
# $Id: rules-so.mak 3113 2007-08-08 19:05:21Z dums $
# Shared libraries tags
PHONY += release-shared dbg-shared stldbg-shared
release-shared: $(OUTPUT_DIR) ${SO_NAME_OUT}
dbg-shared: $(OUTPUT_DIR_DBG) ${SO_NAME_OUT_DBG}
stldbg-shared: $(OUTPUT_DIR_STLDBG) ${SO_NAME_OUT_STLDBG}
ifeq (bcc, $(COMPILER_NAME))
# Borland linker
${SO_NAME_OUT}: $(OBJ) $(RES) $(LIBSDEP)
$(LINK.cc) $(subst /,\\,$(START_OBJ) $(OBJ) $(END_OBJ), $(LINK_OUTPUT_OPTION), , $(LDLIBS), , $(RES))
${SO_NAME_OUT_DBG}: $(OBJ_DBG) $(RES_DBG) $(LIBSDEP)
$(LINK.cc) $(subst /,\\,$(START_OBJ) $(OBJ_DBG) $(END_OBJ), $(LINK_OUTPUT_OPTION), , $(LDLIBS), , $(RES_DBG))
${SO_NAME_OUT_STLDBG}: $(OBJ_STLDBG) $(RES_STLDBG) $(LIBSDEP)
$(LINK.cc) $(subst /,\\,$(START_OBJ) $(OBJ_STLDBG) $(END_OBJ), $(LINK_OUTPUT_OPTION), , $(LDLIBS), , $(RES_STLDBG))
else
ifeq (dmc, $(COMPILER_NAME))
# Digital Mars linker
$(SO_NAME_OUT): $(OBJ) $(RES) $(LIBSDEP)
@echo LIBRARY "$(SO_NAME_BASE).dll" > $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo DESCRIPTION \'STLport DLL for Digital Mars C/C++\'>> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo EXETYPE NT>> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo SUBSYSTEM WINDOWS>> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo CODE SHARED EXECUTE>> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo DATA READWRITE>> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo EXPORTS>> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?cin@std@@3V?$$basic_istream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?cout@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?cerr@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?clog@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?wcin@std@@3V?$$basic_istream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?wcout@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?wcerr@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
@echo '?wclog@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR)/$(SO_NAME_BASE).def
$(LINK.cc) $(subst /,\\,$(OBJ),$(LINK_OUTPUT_OPTION),$(MAP_OUTPUT_OPTION),$(LDLIBS),$(DEF_OPTION),$(RES))
$(SO_NAME_OUT_DBG): $(OBJ_DBG) $(RES_DBG) $(LIBSDEP)
@echo LIBRARY "$(SO_NAME_DBG_BASE).dll" > $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo DESCRIPTION \'STLport DLL for Digital Mars C/C++\'>> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo EXETYPE NT>> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo SUBSYSTEM WINDOWS>> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo CODE SHARED EXECUTE>> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo DATA READWRITE>> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo EXPORTS>> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?cin@std@@3V?$$basic_istream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?cout@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?cerr@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?clog@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?wcin@std@@3V?$$basic_istream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?wcout@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?wcerr@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
@echo '?wclog@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
$(LINK.cc) $(subst /,\\,$(OBJ_DBG),$(LINK_OUTPUT_OPTION),$(MAP_OUTPUT_OPTION),$(LDLIBS),$(DEF_OPTION_DBG),$(RES_DBG))
$(SO_NAME_OUT_STLDBG): $(OBJ_STLDBG) $(RES_STLDBG) $(LIBSDEP)
@echo LIBRARY "$(SO_NAME_STLDBG_BASE).dll" > $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo DESCRIPTION \'STLport DLL for Digital Mars C/C++\'>> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo EXETYPE NT>> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo SUBSYSTEM WINDOWS>> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo CODE SHARED EXECUTE>> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo DATA READWRITE>> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo EXPORTS>> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?cin@std@@3V?$$basic_istream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?cout@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?cerr@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?clog@std@@3V?$$basic_ostream@std@DV?$$char_traits@std@D@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?wcin@std@@3V?$$basic_istream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?wcout@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?wcerr@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@echo '?wclog@std@@3V?$$basic_ostream@std@_YV?$$char_traits@std@_Y@1@@1@A' >> $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
$(LINK.cc) $(subst /,\\,$(OBJ_STLDBG), $(LINK_OUTPUT_OPTION), $(MAP_OUTPUT_OPTION), $(LDLIBS), $(DEF_OPTION_STLDBG), $(RES_STLDBG))
else
# GNU linker
${SO_NAME_OUT}: $(OBJ) $(RES) $(LIBSDEP) $(LSUPC++DEF)
$(LINK.cc) $(LINK_OUTPUT_OPTION) $(OBJ) $(RES) $(LSUPC++DEF) $(LDLIBS) $(STDLIBS)
${SO_NAME_OUT_DBG}: $(OBJ_DBG) $(RES_DBG) $(LIBSDEP) $(LSUPC++DEF)
$(LINK.cc) $(LINK_OUTPUT_OPTION) $(OBJ_DBG) $(RES_DBG) $(LSUPC++DEF) $(LDLIBS) $(STDLIBS)
${SO_NAME_OUT_STLDBG}: $(OBJ_STLDBG) $(RES_STLDBG) $(LIBSDEP) $(LSUPC++DEF)
$(LINK.cc) $(LINK_OUTPUT_OPTION) $(OBJ_STLDBG) $(RES_STLDBG) $(LSUPC++DEF) $(LDLIBS) $(STDLIBS)
endif
endif
@@ -0,0 +1,11 @@
# Time-stamp: <05/09/09 21:12:38 ptr>
# $Id: sys.mak 1802 2005-11-01 08:25:57Z complement $
RC := windres
INSTALL := install
INSTALL_SO := ${INSTALL} -m 0755
INSTALL_A := ${INSTALL} -m 0644
INSTALL_EXE := ${INSTALL} -m 0755
EXT_TEST := test
@@ -0,0 +1,40 @@
# Time-stamp: <05/09/09 21:03:45 ptr>
# $Id: targetsys.mak 2109 2006-01-22 14:15:51Z dums $
CC ?= gcc
CXX ?= g++
# shared library:
SO := dll
ifeq (gcc,$(COMPILER_NAME))
LIB := dll.a
else
LIB := lib
endif
EXP := exp
# executable:
EXE := .exe
# static library extention:
ifeq (dmc,$(COMPILER_NAME))
ARCH := lib
AR := dm_lib -n
AR_INS_R := -c
AR_EXTR := -x
AR_OUT = $(subst /,\,$@)
else
ifeq (bcc,$(COMPILER_NAME))
ARCH := lib
AR := tlib
AR_INS_R := +
AR_EXTR := *
AR_OUT = $(subst /,\,$@)
else
ARCH := a
AR := ar
AR_INS_R := -rs
AR_EXTR := -x
AR_OUT = $@
endif
endif
@@ -0,0 +1,61 @@
# -*- makefile -*- Time-stamp: <06/11/02 10:37:02 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
DBG_SUFFIX ?= g
STLDBG_SUFFIX ?= stl${DBG_SUFFIX}
# Shared libraries:
SO_NAME := lib${LIBNAME}.$(SO)
SO_NAMEx := lib${LIBNAME}.${MAJOR}.$(SO)
SO_NAMExx := lib${LIBNAME}.${MAJOR}.${MINOR}.$(SO)
SO_NAMExxx := lib${LIBNAME}.${MAJOR}.${MINOR}.${PATCH}.$(SO)
SO_NAME_OUT := $(OUTPUT_DIR)/${SO_NAME}
SO_NAME_OUTx := $(OUTPUT_DIR)/${SO_NAMEx}
SO_NAME_OUTxx := $(OUTPUT_DIR)/${SO_NAMExx}
SO_NAME_OUTxxx := $(OUTPUT_DIR)/${SO_NAMExxx}
SO_NAME_DBG := lib${LIBNAME}${DBG_SUFFIX}.$(SO)
SO_NAME_DBGx := lib${LIBNAME}${DBG_SUFFIX}.${MAJOR}.$(SO)
SO_NAME_DBGxx := lib${LIBNAME}${DBG_SUFFIX}.${MAJOR}.${MINOR}.$(SO)
SO_NAME_DBGxxx := lib${LIBNAME}${DBG_SUFFIX}.${MAJOR}.${MINOR}.${PATCH}.$(SO)
SO_NAME_OUT_DBG := $(OUTPUT_DIR_DBG)/${SO_NAME_DBG}
SO_NAME_OUT_DBGx := $(OUTPUT_DIR_DBG)/${SO_NAME_DBGx}
SO_NAME_OUT_DBGxx := $(OUTPUT_DIR_DBG)/${SO_NAME_DBGxx}
SO_NAME_OUT_DBGxxx := $(OUTPUT_DIR_DBG)/${SO_NAME_DBGxxx}
ifndef WITHOUT_STLPORT
SO_NAME_STLDBG := lib${LIBNAME}${STLDBG_SUFFIX}.$(SO)
SO_NAME_STLDBGx := lib${LIBNAME}${STLDBG_SUFFIX}.${MAJOR}.$(SO)
SO_NAME_STLDBGxx := lib${LIBNAME}${STLDBG_SUFFIX}.${MAJOR}.${MINOR}.$(SO)
SO_NAME_STLDBGxxx := lib${LIBNAME}${STLDBG_SUFFIX}.${MAJOR}.${MINOR}.${PATCH}.$(SO)
SO_NAME_OUT_STLDBG := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBG}
SO_NAME_OUT_STLDBGx := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBGx}
SO_NAME_OUT_STLDBGxx := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBGxx}
SO_NAME_OUT_STLDBGxxx := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBGxxx}
# WITHOUT_STLPORT
endif
# Static libraries:
A_NAME := lib${LIBNAME}.$(ARCH)
A_NAME_OUT := $(OUTPUT_DIR_A)/$(A_NAME)
A_NAME_DBG := lib${LIBNAME}${DBG_SUFFIX}.$(ARCH)
A_NAME_OUT_DBG := $(OUTPUT_DIR_A_DBG)/$(A_NAME_DBG)
ifndef WITHOUT_STLPORT
A_NAME_STLDBG := lib${LIBNAME}${STLDBG_SUFFIX}.$(ARCH)
A_NAME_OUT_STLDBG := $(OUTPUT_DIR_A_STLDBG)/$(A_NAME_STLDBG)
endif
@@ -0,0 +1,18 @@
# Time-stamp: <07/03/08 21:46:12 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
INSTALL := /usr/bin/install
INSTALL_SO := ${INSTALL} -c -m 0755
INSTALL_A := ${INSTALL} -c -m 0644
INSTALL_EXE := ${INSTALL} -c -m 0755
EXT_TEST := test
@@ -0,0 +1,18 @@
# Time-stamp: <07/03/08 21:46:37 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
SO := dylib
ARCH := a
AR := ar
AR_INS_R := -r -s
AR_EXTR := -x
AR_OUT = $@
@@ -0,0 +1,45 @@
# Time-stamp: <07/02/05 12:57:11 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
PHONY += release-static-dep release-shared-dep dbg-static-dep dbg-shared-dep \
depend
ifndef WITHOUT_STLPORT
PHONY += stldbg-static-dep stldbg-shared-dep
endif
release-static-dep release-shared-dep: $(DEP)
dbg-static-dep dbg-shared-dep: $(DEP_DBG)
ifndef WITHOUT_STLPORT
stldbg-static-dep stldbg-shared-dep: $(DEP_STLDBG)
_ALL_DEP := $(DEP) $(DEP_DBG) $(DEP_STLDBG)
_DASH_DEP := release-shared-dep dbg-shared-dep stldbg-shared-dep
else
_ALL_DEP := $(DEP) $(DEP_DBG)
_DASH_DEP := release-shared-dep dbg-shared-dep
endif
depend:: $(OUTPUT_DIRS) ${_DASH_DEP}
@cat -s $(_ALL_DEP) /dev/null > $(DEPENDS_COLLECTION)
TAGS: $(OUTPUT_DIRS) ${_DASH_DEP}
@cat -s $(_ALL_DEP) /dev/null | sed -e 's/^.*://;s/^ *//;s/\\$$//;s/ $$//;s/ /\n/g' | sort | uniq | xargs etags -I --declarations
ifneq ($(OSREALNAME),mingw)
tags: $(OUTPUT_DIRS) ${_DASH_DEP}
@cat -s $(_ALL_DEP) /dev/null | sed -e 's/^.*://;s/^ *//;s/\\$$//;s/ $$//;s/ /\n/g' | sort | uniq | xargs ctags -d --globals --declarations -t -T
endif
-include $(DEPENDS_COLLECTION)
+153
View File
@@ -0,0 +1,153 @@
# Time-stamp: <07/05/31 01:03:50 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Copyright (c) 2006, 2007
# Francois Dumont
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
# For DMC Cygwin/MSys are only build environment, they do not represent
# the targetted OS so per default we keep all generated files in STLport
# folder.
BASE_INSTALL_DIR ?= ${STLPORT_DIR}
ALL_TAGS = all-static all-shared
ifdef LIBNAME
INSTALL_TAGS = install-static install-shared
endif
CXX := dmc
CC := dmc
DEFS ?=
OPT ?=
CFLAGS = -Ae -C -p -3 -w6 -w12
CXXFLAGS = -Ae -C -p -3 -w12
DEFS += -DSTRICT
ifdef WITH_DYNAMIC_RTL
release-static : OPT += -ND
dbg-static : OPT += -ND
stldbg-static : OPT += -ND
endif
ifndef WITH_STATIC_RTL
release-shared : OPT += -ND
dbg-shared : OPT += -ND
stldbg-shared : OPT += -ND
endif
ifdef WITHOUT_THREAD
DEFS += -D_STLP_NO_THREADS
endif
ifndef WITHOUT_RTTI
OPT += -Ar
endif
WINVER ?= 0x0501
DEFS += -DWINVER=$(WINVER)
OUTPUT_OPTION = -o$@
LINK_OUTPUT_OPTION = $@
CPPFLAGS = $(DEFS) $(OPT) $(INCLUDES)
ifdef EXTRA_CXXFLAGS
CXXFLAGS += $(EXTRA_CXXFLAGS)
endif
ifdef EXTRA_CFLAGS
CFLAGS += $(EXTRA_CFLAGS)
endif
CDEPFLAGS = -E -M
CCDEPFLAGS = -E -M
RCFLAGS = --include-dir=${STLPORT_INCLUDE_DIR} -DCOMP=dmc
release-shared : RCFLAGS += -DBUILD=r -DBUILD_INFOS="-o"
dbg-shared : RCFLAGS += -DBUILD=g -DBUILD_INFOS="-gl -D_DEBUG"
stldbg-shared : RCFLAGS += -DBUILD=stlg -DBUILD_INFOS="-gl -D_STLP_DEBUG"
RC_OUTPUT_OPTION = $(OUTPUT_OPTION)
COMPILE.rc = ${RC} ${RCFLAGS}
LINK.cc = link $(LDFLAGS)
LDLIBS += user32.lib kernel32.lib snn.lib
# STLport DEBUG mode specific defines
dbg-static : DEFS += -D_DEBUG
dbg-shared : DEFS += -D_DEBUG
stldbg-static : DEFS += -D_DEBUG
stldbg-shared : DEFS += -D_DEBUG
dbg-static-dep : DEFS += -D_DEBUG
dbg-shared-dep : DEFS += -D_DEBUG
stldbg-static : DEFS += -D_STLP_DEBUG
stldbg-shared : DEFS += -D_STLP_DEBUG
stldbg-static-dep : DEFS += -D_STLP_DEBUG
stldbg-shared-dep : DEFS += -D_STLP_DEBUG
# optimization and debug compiler flags
release-static : OPT += -o
release-shared : OPT += -o
dbg-static : OPT += -gl
dbg-shared : OPT += -gl
stldbg-static : OPT += -gl
stldbg-shared : OPT += -gl
ifndef WITHOUT_THREAD
release-static : OPT += -D_MT
dbg-static : OPT += -D_MT
stldbg-static : OPT += -D_MT
endif
release-static : AR += -p128
dbg-static : AR += -p512
stldbg-static : AR += -p512
ifndef LIBNAME
ifdef WITH_DYNAMIC_RTL
release-static: DEFS += -D_STLP_USE_STATIC_LIB
dbg-static: DEFS += -D_STLP_USE_STATIC_LIB
stldbg-static: DEFS += -D_STLP_USE_STATIC_LIB
endif
ifdef WITH_STATIC_RTL
release-shared: DEFS += -D_STLP_USE_DYNAMIC_LIB
dbg-shared: DEFS += -D_STLP_USE_DYNAMIC_LIB
stldbg-shared: DEFS += -D_STLP_USE_DYNAMIC_LIB
endif
endif
# map output option (move map files to output dir)
ifdef LIBNAME
release-shared: MAP_OUTPUT_OPTION = $(OUTPUT_DIR)/$(SO_NAME_BASE).map
dbg-shared: MAP_OUTPUT_OPTION = $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).map
stldbg-shared: MAP_OUTPUT_OPTION = $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).map
else
release-shared: MAP_OUTPUT_OPTION = $(OUTPUT_DIR)/$(PRGNAME).map
release-static: MAP_OUTPUT_OPTION = $(OUTPUT_DIR)/$(PRGNAME).map
dbg-shared: MAP_OUTPUT_OPTION = $(OUTPUT_DIR_DBG)/$(PRGNAME).map
dbg-static: MAP_OUTPUT_OPTION = $(OUTPUT_DIR_DBG)/$(PRGNAME).map
stldbg-shared: MAP_OUTPUT_OPTION = $(OUTPUT_DIR_STLDBG)/$(PRGNAME).map
stldbg-static: MAP_OUTPUT_OPTION = $(OUTPUT_DIR_STLDBG)/$(PRGNAME).map
endif
# dependency output parser (dependencies collector)
DP_OUTPUT_DIR = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_DBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_DBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_STLDBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_STLDBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
@@ -0,0 +1,31 @@
# Time-stamp: <07/05/31 10:14:29 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
# boost (http://www.boost.org, http://boost.sourceforge.net)
# ifdef BOOST_DIR
# BOOST_INCLUDE_DIR ?= ${BOOST_DIR}
# endif
ifdef STLP_BUILD_BOOST_PATH
BOOST_INCLUDE_DIR ?= ${STLP_BUILD_BOOST_PATH}
endif
# STLport library
ifndef WITHOUT_STLPORT
STLPORT_DIR ?= ${SRCROOT}/..
endif
ifdef STLPORT_DIR
STLPORT_LIB_DIR ?= $(STLPORT_DIR)/${TARGET_NAME}lib
STLPORT_INCLUDE_DIR ?= $(STLPORT_DIR)/stlport
endif
@@ -0,0 +1,18 @@
# Time-stamp: <07/03/08 21:50:00 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
INSTALL := /usr/bin/install
INSTALL_SO := ${INSTALL} -c -m 0755
INSTALL_A := ${INSTALL} -c -m 0644
INSTALL_EXE := ${INSTALL} -c -m 0755
EXT_TEST := test
@@ -0,0 +1,18 @@
# Time-stamp: <07/03/08 21:50:23 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
SO := so
ARCH := a
AR := ar
AR_INS_R := -r
AR_EXTR := -x
AR_OUT = $@
+271
View File
@@ -0,0 +1,271 @@
# Time-stamp: <08/02/28 10:25:46 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifndef _FORCE_CXX
CXX := c++
else
CXX := ${_FORCE_CXX}
endif
ifndef _FORCE_CC
CC := gcc
else
CC := ${_FORCE_CC}
endif
ifeq ($(OSNAME), cygming)
RC := windres
endif
ifdef TARGET_OS
CXX := ${TARGET_OS}-${CXX}
CC := ${TARGET_OS}-${CC}
AS := ${TARGET_OS}-${AS}
endif
CXX_VERSION := $(shell ${CXX} -dumpversion)
CXX_VERSION_MAJOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$1; }')
CXX_VERSION_MINOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$2; }')
CXX_VERSION_PATCH := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$3; }')
# Check that we need option -fuse-cxa-atexit for compiler
_CXA_ATEXIT := $(shell ${CXX} -v 2>&1 | grep -q -e "--enable-__cxa_atexit" || echo "-fuse-cxa-atexit")
ifeq ($(OSNAME), darwin)
# This is to differentiate Apple-builded compiler from original
# GNU compiler (it has different behaviour)
ifneq ("$(shell ${CXX} -v 2>&1 | grep Apple)", "")
GCC_APPLE_CC := 1
endif
endif
DEFS ?=
OPT ?=
ifdef WITHOUT_STLPORT
INCLUDES =
else
INCLUDES = -I${STLPORT_INCLUDE_DIR}
endif
ifdef BOOST_INCLUDE_DIR
INCLUDES += -I${BOOST_INCLUDE_DIR}
endif
ifeq ($(OSNAME), cygming)
ifeq ($(OSREALNAME), mingw)
# MinGW has problem with /usr/local reference in gcc or linker command line so
# we use a local install for this platform.
BASE_INSTALL_DIR ?= ${STLPORT_DIR}
endif
endif
OUTPUT_OPTION = -o $@
LINK_OUTPUT_OPTION = ${OUTPUT_OPTION}
CPPFLAGS = $(DEFS) $(INCLUDES)
ifdef WITHOUT_RTTI
# -fno-rtti shouldn't be pass to the C compiler, we cannot use OPT so we add it
# directly to the compiler command name.
CXX += -fno-rtti
ifdef STLP_BUILD
# gcc do not define any macro to signal that there is no rtti support:
DEFS += -D_STLP_NO_RTTI
endif
endif
ifeq ($(OSNAME), cygming)
WINVER ?= 0x0501
RCFLAGS = --include-dir=${STLPORT_INCLUDE_DIR} --output-format coff -DCOMP=gcc
release-shared : RCFLAGS += -DBUILD_INFOS=-O2
dbg-shared : RCFLAGS += -DBUILD=g -DBUILD_INFOS=-g
stldbg-shared : RCFLAGS += -DBUILD=stlg -DBUILD_INFOS="-g -D_STLP_DEBUG"
RC_OUTPUT_OPTION = -o $@
CXXFLAGS = -Wall -Wsign-promo -Wcast-qual -fexceptions
ifndef WITHOUT_THREAD
ifeq ($(OSREALNAME), mingw)
CCFLAGS += -mthreads
CFLAGS += -mthreads
CXXFLAGS += -mthreads
ifeq ($(CXX_VERSION_MAJOR),2)
CCFLAGS += -fvtable-thunks
CFLAGS += -fvtable-thunks
CXXFLAGS += -fvtable-thunks
endif
else
ifneq (,$(findstring no-cygwin,$(EXTRA_CXXFLAGS)))
CCFLAGS += -mthreads
CFLAGS += -mthreads
CXXFLAGS += -mthreads
else
DEFS += -D_REENTRANT
endif
endif
endif
CCFLAGS += $(OPT)
CFLAGS += $(OPT)
CXXFLAGS += $(OPT)
COMPILE.rc = $(RC) $(RCFLAGS)
release-static : DEFS += -D_STLP_USE_STATIC_LIB
dbg-static : DEFS += -D_STLP_USE_STATIC_LIB
stldbg-static : DEFS += -D_STLP_USE_STATIC_LIB
ifeq ($(OSREALNAME), mingw)
dbg-shared : DEFS += -D_DEBUG
stldbg-shared : DEFS += -D_DEBUG
dbg-static : DEFS += -D_DEBUG
stldbg-static : DEFS += -D_DEBUG
DEFS += -DWINVER=${WINVER}
else
# When using the -mno-cygwin option we need to take into account WINVER.
# As there is no DEFS for C compiler and an other for C++ we use CFLAGS
# and CXXFLAGS
ifdef EXTRA_CXXFLAGS
ifneq (,$(findstring no-cygwin,$(EXTRA_CXXFLAGS)))
CXXFLAGS += -DWINVER=${WINVER}
endif
endif
ifdef EXTRA_CFLAGS
ifneq (,$(findstring no-cygwin,$(EXTRA_CFLAGS)))
CFLAGS += -DWINVER=${WINVER}
endif
endif
endif
endif
ifndef WITHOUT_THREAD
PTHREAD := -pthread
else
PTHREAD :=
endif
ifeq ($(OSNAME),sunos)
ifndef WITHOUT_THREAD
PTHREADS := -pthreads
else
PTHREADS :=
endif
CCFLAGS = $(PTHREADS) $(OPT)
CFLAGS = $(PTHREADS) $(OPT)
# CXXFLAGS = $(PTHREADS) -nostdinc++ -fexceptions $(OPT)
CXXFLAGS = $(PTHREADS) -fexceptions $(OPT)
endif
ifeq ($(OSNAME),linux)
CCFLAGS = $(PTHREAD) $(OPT)
CFLAGS = $(PTHREAD) $(OPT)
# CXXFLAGS = $(PTHREAD) -nostdinc++ -fexceptions $(OPT)
CXXFLAGS = $(PTHREAD) -fexceptions $(OPT)
endif
ifeq ($(OSNAME),openbsd)
CCFLAGS = $(PTHREAD) $(OPT)
CFLAGS = $(PTHREAD) $(OPT)
# CXXFLAGS = $(PTHREAD) -nostdinc++ -fexceptions $(OPT)
CXXFLAGS = $(PTHREAD) -fexceptions $(OPT)
endif
ifeq ($(OSNAME),freebsd)
CCFLAGS = $(PTHREAD) $(OPT)
CFLAGS = $(PTHREAD) $(OPT)
ifndef WITHOUT_THREAD
DEFS += -D_REENTRANT
endif
# CXXFLAGS = $(PTHREAD) -nostdinc++ -fexceptions $(OPT)
CXXFLAGS = $(PTHREAD) -fexceptions $(OPT)
endif
ifeq ($(OSNAME),darwin)
CCFLAGS = $(OPT)
CFLAGS = $(OPT)
ifndef WITHOUT_THREAD
DEFS += -D_REENTRANT
endif
CXXFLAGS = -fexceptions $(OPT)
release-shared : CXXFLAGS += -dynamic
dbg-shared : CXXFLAGS += -dynamic
stldbg-shared : CXXFLAGS += -dynamic
endif
ifeq ($(OSNAME),hp-ux)
ifneq ($(M_ARCH),ia64)
release-static : OPT += -fno-reorder-blocks
release-shared : OPT += -fno-reorder-blocks
endif
CCFLAGS = $(PTHREAD) $(OPT)
CFLAGS = $(PTHREAD) $(OPT)
# CXXFLAGS = $(PTHREAD) -nostdinc++ -fexceptions $(OPT)
CXXFLAGS = $(PTHREAD) -fexceptions $(OPT)
endif
ifeq ($(CXX_VERSION_MAJOR),2)
CXXFLAGS += -ftemplate-depth-32
endif
# Required for correct order of static objects dtors calls:
ifeq ("$(findstring $(OSNAME),darwin cygming)","")
ifneq ($(CXX_VERSION_MAJOR),2)
CXXFLAGS += $(_CXA_ATEXIT)
endif
endif
# Code should be ready for this option
ifneq ($(OSNAME),cygming)
ifneq ($(CXX_VERSION_MAJOR),2)
ifneq ($(CXX_VERSION_MAJOR),3)
CXXFLAGS += -fvisibility=hidden
CFLAGS += -fvisibility=hidden
endif
endif
endif
ifdef EXTRA_CXXFLAGS
CXXFLAGS += ${EXTRA_CXXFLAGS}
endif
ifdef EXTRA_CFLAGS
CFLAGS += ${EXTRA_CFLAGS}
endif
CDEPFLAGS = -E -M
CCDEPFLAGS = -E -M
# STLport DEBUG mode specific defines
stldbg-static : DEFS += -D_STLP_DEBUG
stldbg-shared : DEFS += -D_STLP_DEBUG
stldbg-static-dep : DEFS += -D_STLP_DEBUG
stldbg-shared-dep : DEFS += -D_STLP_DEBUG
# optimization and debug compiler flags
release-static : OPT += -O2
release-shared : OPT += -O2
dbg-static : OPT += -g
dbg-shared : OPT += -g
#dbg-static-dep : OPT += -g
#dbg-shared-dep : OPT += -g
stldbg-static : OPT += -g
stldbg-shared : OPT += -g
#stldbg-static-dep : OPT += -g
#stldbg-shared-dep : OPT += -g
# dependency output parser (dependencies collector)
DP_OUTPUT_DIR = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_DBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_DBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_STLDBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_STLDBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
@@ -0,0 +1,21 @@
# Time-stamp: <07/05/31 00:47:11 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Copyright (c) 2006, 2007
# Francois Dumont
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
INSTALL := cp
INSTALL_SO := ${INSTALL}
INSTALL_A := ${INSTALL}
INSTALL_EXE := ${INSTALL}
EXT_TEST := /usr/bin/test
@@ -0,0 +1,22 @@
# Time-stamp: <08/01/29 09:40:35 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifeq ($(M_ARCH),ia64)
SO := so
else
SO := sl
endif
ARCH := a
AR := ar
AR_INS_R := -rs
AR_EXTR := -x
AR_OUT = $@
@@ -0,0 +1,85 @@
# Time-stamp: <07/03/08 21:41:21 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
#INCLUDES :=
CXX := icpc
CC := icc
ifdef TARGET_OS
# CXX := ${TARGET_OS}-c++
# CC := ${TARGET_OS}-gcc
endif
CXX_VERSION := $(shell ${CXX} --version | awk 'NR == 1 {print $$3; }')
# if we didn't get anything from that, use the old style for versions < 9
ifeq (${CXX_VERSION},)
CXX_VERSION := $(shell ${CXX} --version)
endif
CXX_VERSION_MAJOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$1; }')
CXX_VERSION_MINOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$2; }')
# CXX_VERSION_PATCH := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$3; }')
SYSINCLUDES := -I$(shell which icpc | xargs dirname | xargs dirname)/include/c++
DEFS ?=
OPT ?=
ifndef WITHOUT_THREAD
DEFS += -D_REENTRANT
endif
OUTPUT_OPTION = -o $@
LINK_OUTPUT_OPTION = ${OUTPUT_OPTION}
CPPFLAGS = $(DEFS) $(INCLUDES) $(SYSINCLUDES)
ifeq ($(OSNAME),linux)
CCFLAGS = $(OPT)
CFLAGS = $(OPT)
# CXXFLAGS = -pthread -nostdinc++ -fexceptions -fident $(OPT)
CXXFLAGS = $(OPT)
endif
CDEPFLAGS = -E -M
CCDEPFLAGS = -E -M
# STLport DEBUG mode specific defines
stldbg-static : DEFS += -D_STLP_DEBUG
stldbg-shared : DEFS += -D_STLP_DEBUG
stldbg-static-dep : DEFS += -D_STLP_DEBUG
stldbg-shared-dep : DEFS += -D_STLP_DEBUG
# optimization and debug compiler flags
release-static : OPT += -O2
release-shared : OPT += -O2
dbg-static : OPT += -g
dbg-shared : OPT += -g
#dbg-static-dep : OPT += -g
#dbg-shared-dep : OPT += -g
stldbg-static : OPT += -g
stldbg-shared : OPT += -g
#stldbg-static-dep : OPT += -g
#stldbg-shared-dep : OPT += -g
# dependency output parser (dependencies collector)
DP_OUTPUT_DIR = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_DBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_DBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_STLDBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_STLDBG)/\1.o $@ : |g' > $@; \
[ -s $@ ] || rm -f $@
@@ -0,0 +1,35 @@
# -*- makefile -*- Time-stamp: <08/06/12 14:58:49 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
OPT += -xcode=pic32
dbg-shared: LDFLAGS += -G -Qoption ld -z,initfirst -h$(SO_NAME_DBGxx) ${NOSTDLIB}
stldbg-shared: LDFLAGS += -G -Qoption ld -z,initfirst -h$(SO_NAME_STLDBGxx) ${NOSTDLIB}
release-shared: LDFLAGS += -G -Qoption ld -z,initfirst -h$(SO_NAMExx) ${NOSTDLIB}
DEPENDS_COLLECTION_SUNPRO := $(DEPENDS_COLLECTION).sunpro
compiler-dep :: $(DEPENDS_COLLECTION_SUNPRO)
STD_HEADER_LISTS = $(STLPORT_ETC_DIR)/std_headers.txt \
$(STLPORT_ETC_DIR)/std_headers_cpp_runtime_h.txt \
$(STLPORT_ETC_DIR)/std_headers_c.txt \
$(STLPORT_ETC_DIR)/std_headers_c_h.txt \
$(STLPORT_ETC_DIR)/std_headers_classic_iostreams.txt \
$(STLPORT_ETC_DIR)/std_headers_cpp_runtime.txt
$(DEPENDS_COLLECTION_SUNPRO) : $(STD_HEADER_LISTS)
@echo "Linking header files required for SunPro compiler"
@for file in `cat $(STD_HEADER_LISTS)`; do \
echo "." | awk '{printf("%s", $$0)}' ; \
(cd $(STLPORT_INCLUDE_DIR) ; rm -f $$file.SUNWCCh; ln -s ./$$file $$file.SUNWCCh) ; \
done; echo ""
@cat $(STD_HEADER_LISTS) | awk '{print "$(STLPORT_INCLUDE_DIR)/" $$0 ".SUNWCCh : $(STLPORT_INCLUDE_DIR)/" $$0 }' > $@
@@ -0,0 +1,14 @@
# -*- makefile -*- Time-stamp: <08/06/12 14:59:23 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
dbg-shared: LDFLAGS += -b +nostl -Wl,+h$(SO_NAME_DBGxx)
stldbg-shared: LDFLAGS += -b +nostl -Wl,+h$(SO_NAME_STLDBGxx)
release-shared: LDFLAGS += -b +nostl -Wl,+h$(SO_NAMExx)
@@ -0,0 +1,83 @@
# -*- makefile -*- Time-stamp: <07/05/31 01:29:22 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Copyright (c) 2006, 2007
# Francois Dumont
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
release-shared : LDFLAGS += -Tpd -w -w-dup
dbg-shared : LDFLAGS += -Tpd -w -w-dup
stldbg-shared : LDFLAGS += -Tpd -w -w-dup
ifneq ($(OSNAME),linux)
release-shared : LDFLAGS += -V4.0 -Gi
dbg-shared : LDFLAGS += -V4.0 -Gi
stldbg-shared : LDFLAGS += -V4.0 -Gi
release-shared : OPT += -tWD
dbg-shared : OPT += -tWD
stldbg-shared : OPT += -tWD
START_OBJ := c0d32.obj
else
release-shared : OPT += -tD -VP
dbg-shared : OPT += -tD -VP
stldbg-shared : OPT += -tD -VP
release-shared: DEFS += -D_DLL
dbg-shared: DEFS += -D_DLL
stldbg-shared: DEFS += -D_DLL
START_OBJ := borinitso.o
endif
# optimization and debug compiler flags
dbg-static : OPT += -R -v -y
dbg-shared : OPT += -R -v -y
stldbg-static : OPT += -R -v -y
stldbg-shared : OPT += -R -v -y
dbg-shared : LDFLAGS += -v
dbg-static : LDFLAGS += -v
stldbg-shared : LDFLAGS += -v
stldbg-static : LDFLAGS += -v
install-shared: install-release-shared install-dbg-shared install-stldbg-shared
install: install-shared
ifneq ($(OSNAME),linux)
install-dbg-shared: install-dbg-shared-tds
install-stldbg-shared: install-stldbg-shared-tds
endif
BASE_LIBNAME := $(LIB_PREFIX)${LIBNAME}${LIB_TYPE}${LIB_SUFFIX}
BASE_LIBNAME_DBG := $(LIB_PREFIX)${LIBNAME}${DBG_SUFFIX}${LIB_TYPE}${LIB_SUFFIX}
BASE_LIBNAME_STLDBG := $(LIB_PREFIX)${LIBNAME}${STLDBG_SUFFIX}${LIB_TYPE}${LIB_SUFFIX}
BASE_LIBNAMES = ${BASE_LIBNAME} ${BASE_LIBNAME_DBG} ${BASE_LIBNAME_STLDBG}
BASE_LIB_EXTS = lib dll tds map res
LIB_FILES := $(foreach n,$(BASE_LIBNAMES),$(foreach e,$(BASE_LIB_EXTS),$(n).$(e)))
install-dbg-shared-tds:
$(INSTALL_SO) $(OUTPUT_DIR_DBG)/${BASE_LIBNAME_DBG}.tds $(INSTALL_BIN_DIR)/
install-stldbg-shared-tds:
$(INSTALL_SO) $(OUTPUT_DIR_STLDBG)/${BASE_LIBNAME_STLDBG}.tds $(INSTALL_BIN_DIR)/
clean::
$(foreach d,$(OUTPUT_DIRS),$(foreach f,$(LIB_FILES),@rm -f $(d)/$(f)))
uninstall::
$(foreach d,$(INSTALL_DIRS),$(foreach f,$(LIB_FILES),@rm -f $(d)/$(f)))
$(foreach d,$(INSTALL_DIRS),@-rmdir -p $(d) 2>/dev/null)
@@ -0,0 +1,115 @@
# -*- makefile -*- Time-stamp: <07/05/31 22:15:12 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
define lib_clean
clean::
@-rm -f $${$(1)_SO_NAME_OUT}
@-rm -f $${$(1)_SO_NAME_OUTx}
@-rm -f $${$(1)_SO_NAME_OUTxx}
@-rm -f $${$(1)_SO_NAME_OUTxxx}
@-rm -f $${$(1)_SO_NAME_OUT_DBG}
@-rm -f $${$(1)_SO_NAME_OUT_DBGx}
@-rm -f $${$(1)_SO_NAME_OUT_DBGxx}
@-rm -f $${$(1)_SO_NAME_OUT_DBGxxx}
@-rm -f $${$(1)_SO_NAME_OUT_STLDBG}
@-rm -f $${$(1)_SO_NAME_OUT_STLDBGx}
@-rm -f $${$(1)_SO_NAME_OUT_STLDBGxx}
@-rm -f $${$(1)_SO_NAME_OUT_STLDBGxxx}
@-rm -f $${$(1)_A_NAME_OUT}
@-rm -f $${$(1)_A_NAME_OUT_DBG}
@-rm -f $${$(1)_A_NAME_OUT_STLDBG}
ifeq ($(OSNAME), cygming)
@-rm -f $${$(1)_LIB_NAME_OUT}
@-rm -f $${$(1)_LIB_NAME_OUT_DBG}
@-rm -f $${$(1)_LIB_NAME_OUT_STLDBG}
@-rm -f $${$(1)_RES}
@-rm -f $${$(1)_RES_DBG}
@-rm -f $${$(1)_RES_STLDBG}
ifneq ($(OSREALNAME), mingw)
@-rm -f ${LSUPC++DEF}
endif
endif
uninstall::
@-rm -f $$(INSTALL_LIB_DIR)/$$($(1)_SO_NAME)
@-rm -f $$(INSTALL_LIB_DIR)/$$($(1)_SO_NAMEx)
@-rm -f $$(INSTALL_LIB_DIR)/$$($(1)_SO_NAMExx)
@-rm -f $$(INSTALL_LIB_DIR)/$$($(1)_SO_NAMExxx)
@-rm -f $$(INSTALL_LIB_DIR_DBG)/$$($(1)_SO_NAME_DBG)
@-rm -f $$(INSTALL_LIB_DIR_DBG)/$$($(1)_SO_NAME_DBGx)
@-rm -f $$(INSTALL_LIB_DIR_DBG)/$$($(1)_SO_NAME_DBGxx)
@-rm -f $$(INSTALL_LIB_DIR_DBG)/$$($(1)_SO_NAME_DBGxxx)
@-rm -f $$(INSTALL_LIB_DIR_STLDBG)/$$($(1)_SO_NAME_STLDBG)
@-rm -f $$(INSTALL_LIB_DIR_STLDBG)/$$($(1)_SO_NAME_STLDBGx)
@-rm -f $$(INSTALL_LIB_DIR_STLDBG)/$$($(1)_SO_NAME_STLDBGxx)
@-rm -f $$(INSTALL_LIB_DIR_STLDBG)/$$($(1)_SO_NAME_STLDBGxxx)
@-rm -f $$(INSTALL_LIB_DIR)/$${$(1)_A_NAME_OUT}
@-rm -f $$(INSTALL_LIB_DIR_DBG)/$${$(1)_A_NAME_OUT_DBG}
@-rm -f $$(INSTALL_LIB_DIR_STLDBG)/$${$(1)_A_NAME_OUT_STLDBG}
@-rmdir -p $$(INSTALL_LIB_DIR) $$(INSTALL_LIB_DIR_DBG) $$(INSTALL_LIB_DIR_STLDBG) 2>/dev/null
endef
$(foreach nm,$(LIBNAMES),$(eval $(call lib_clean,$(nm))))
clean::
ifdef LIBNAME
@-rm -f ${SO_NAME_OUT}
@-rm -f ${SO_NAME_OUTx}
@-rm -f ${SO_NAME_OUTxx}
@-rm -f ${SO_NAME_OUTxxx}
@-rm -f ${SO_NAME_OUT_DBG}
@-rm -f ${SO_NAME_OUT_DBGx}
@-rm -f ${SO_NAME_OUT_DBGxx}
@-rm -f ${SO_NAME_OUT_DBGxxx}
@-rm -f ${SO_NAME_OUT_STLDBG}
@-rm -f ${SO_NAME_OUT_STLDBGx}
@-rm -f ${SO_NAME_OUT_STLDBGxx}
@-rm -f ${SO_NAME_OUT_STLDBGxxx}
@-rm -f ${A_NAME_OUT}
@-rm -f ${A_NAME_OUT_DBG}
@-rm -f ${A_NAME_OUT_STLDBG}
ifeq ($(OSNAME), cygming)
@-rm -f ${LIB_NAME_OUT}
@-rm -f ${LIB_NAME_OUT_DBG}
@-rm -f ${LIB_NAME_OUT_STLDBG}
@-rm -f ${RES}
@-rm -f ${RES_DBG}
@-rm -f ${RES_STLDBG}
ifneq ($(OSREALNAME), mingw)
@-rm -f ${LSUPC++DEF}
endif
endif
endif
distclean::
@-rm -f $(DEPENDS_COLLECTION)
@-rmdir -p $(AUX_DIR) ${OUTPUT_DIR} ${OUTPUT_DIR_DBG} ${OUTPUT_DIR_STLDBG} 2>/dev/null
uninstall::
ifdef LIBNAME
@-rm -f $(INSTALL_LIB_DIR)/$(SO_NAME)
@-rm -f $(INSTALL_LIB_DIR)/$(SO_NAMEx)
@-rm -f $(INSTALL_LIB_DIR)/$(SO_NAMExx)
@-rm -f $(INSTALL_LIB_DIR)/$(SO_NAMExxx)
@-rm -f $(INSTALL_LIB_DIR_DBG)/$(SO_NAME_DBG)
@-rm -f $(INSTALL_LIB_DIR_DBG)/$(SO_NAME_DBGx)
@-rm -f $(INSTALL_LIB_DIR_DBG)/$(SO_NAME_DBGxx)
@-rm -f $(INSTALL_LIB_DIR_DBG)/$(SO_NAME_DBGxxx)
@-rm -f $(INSTALL_LIB_DIR_STLDBG)/$(SO_NAME_STLDBG)
@-rm -f $(INSTALL_LIB_DIR_STLDBG)/$(SO_NAME_STLDBGx)
@-rm -f $(INSTALL_LIB_DIR_STLDBG)/$(SO_NAME_STLDBGxx)
@-rm -f $(INSTALL_LIB_DIR_STLDBG)/$(SO_NAME_STLDBGxxx)
@-rm -f $(INSTALL_LIB_DIR)/${A_NAME_OUT}
@-rm -f $(INSTALL_LIB_DIR_DBG)/${A_NAME_OUT_DBG}
@-rm -f $(INSTALL_LIB_DIR_STLDBG)/${A_NAME_OUT_STLDBG}
endif
@-rmdir -p $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR_DBG) $(INSTALL_LIB_DIR_STLDBG) 2>/dev/null
@@ -0,0 +1,25 @@
# -*- makefile -*- Time-stamp: <07/05/31 01:29:36 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Copyright (c) 2006, 2007
# Francois Dumont
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
release-shared: OPT += -WD
dbg-shared: OPT += -WD
stldbg-shared: OPT += -WD
release-shared: LDFLAGS += /DELEXECUTABLE/IMPLIB:$(subst /,\\,$(OUTPUT_DIR)/$(SO_NAME_BASE).lib)
dbg-shared: LDFLAGS += /CODEVIEW/DELEXECUTABLE/IMPLIB:$(subst /,\\,$(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).lib)
stldbg-shared: LDFLAGS += /CODEVIEW/DELEXECUTABLE/IMPLIB:$(subst /,\\,$(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).lib)
DEF_OPTION = $(OUTPUT_DIR)/$(SO_NAME_BASE).def
DEF_OPTION_DBG = $(OUTPUT_DIR_DBG)/$(SO_NAME_DBG_BASE).def
DEF_OPTION_STLDBG = $(OUTPUT_DIR_STLDBG)/$(SO_NAME_STLDBG_BASE).def
@@ -0,0 +1,311 @@
# -*- makefile -*- Time-stamp: <08/06/12 15:48:58 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
# Oh, the commented below work for gmake 3.78.1 and above,
# but phrase without tag not work for it. Since gmake 3.79
# tag with assignment fail, but work assignment for all tags
# (really that more correct).
ifneq ($(OSNAME), cygming)
OPT += -fPIC
endif
ifndef NOT_USE_NOSTDLIB
ifeq ($(CXX_VERSION_MAJOR),2)
# i.e. gcc before 3.x.x: 2.95, etc.
# gcc before 3.x don't had libsupc++.a and libgcc_s.so
# exceptions and operators new are in libgcc.a
# Unfortunatly gcc before 3.x has a buggy C++ language support outside stdc++, so definition of STDLIBS below is commented
NOT_USE_NOSTDLIB := 1
#STDLIBS := $(shell ${CXX} -print-file-name=libgcc.a) -lpthread -lc -lm
endif
ifeq ($(CXX_VERSION_MAJOR),3)
# gcc before 3.3 (i.e. 3.0.x, 3.1.x, 3.2.x) has buggy libsupc++, so we should link with libstdc++ to avoid one
ifeq ($(CXX_VERSION_MINOR),0)
NOT_USE_NOSTDLIB := 1
endif
ifeq ($(CXX_VERSION_MINOR),1)
NOT_USE_NOSTDLIB := 1
endif
ifeq ($(CXX_VERSION_MINOR),2)
NOT_USE_NOSTDLIB := 1
endif
endif
endif
ifndef NOT_USE_NOSTDLIB
ifeq ($(OSNAME),linux)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),openbsd)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),freebsd)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),netbsd)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),sunos)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),darwin)
_USE_NOSTDLIB := 1
endif
ifeq ($(OSNAME),cygming)
_USE_NOSTDLIB := 1
endif
endif
ifndef WITHOUT_STLPORT
ifeq (${STLPORT_LIB_DIR},)
ifneq ($(OSNAME),cygming)
release-shared: STLPORT_LIB = -lstlport
dbg-shared: STLPORT_LIB = -lstlportg
stldbg-shared: STLPORT_LIB = -lstlportstlg
else
LIB_VERSION = ${LIBMAJOR}.${LIBMINOR}
release-shared: STLPORT_LIB = -lstlport.${LIB_VERSION}
dbg-shared: STLPORT_LIB = -lstlportg.${LIB_VERSION}
stldbg-shared: STLPORT_LIB = -lstlportstlg.${LIB_VERSION}
endif
else
# STLPORT_LIB_DIR not empty
ifneq ($(OSNAME),cygming)
release-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlport
dbg-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlportg
stldbg-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlportstlg
else
LIB_VERSION = ${LIBMAJOR}.${LIBMINOR}
release-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlport.${LIB_VERSION}
dbg-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlportg.${LIB_VERSION}
stldbg-shared: STLPORT_LIB = -L${STLPORT_LIB_DIR} -lstlportstlg.${LIB_VERSION}
endif
endif
endif
ifdef _USE_NOSTDLIB
NOSTDLIB :=
# Check whether gcc builded with --disable-shared
ifeq ($(shell ${CXX} ${CXXFLAGS} -print-file-name=libgcc_eh.a),libgcc_eh.a)
# gcc builded with --disable-shared, (no library libgcc_eh.a); all exception support in libgcc.a
_LGCC_EH :=
_LGCC_S := -lgcc
else
# gcc builded with --enable-shared (default)
ifdef USE_STATIC_LIBGCC
# if force usage of static libgcc, then exceptions support should be taken from libgcc_eh
_LGCC_EH := -lgcc_eh
_LGCC_S := -lgcc
else
#ifneq ($(OSNAME),darwin)
# otherwise, exceptions support is in libgcc_s.so
_LGCC_EH :=
ifneq ($(OSNAME),darwin)
_LGCC_S := -lgcc_s
else
ifeq ($(MACOSX_TEN_FIVE),true)
_LGCC_S := -lgcc_s.10.5
else
_LGCC_S := -lgcc_s.10.4
endif
# end of Darwin
endif
# end of !USE_STATIC_LIBGCC
endif
# end of present libgcc_eh.a
endif
_LSUPCPP := $(shell ${CXX} ${CXXFLAGS} -print-file-name=libsupc++.a)
ifeq (${OSNAME},darwin)
ifdef GCC_APPLE_CC
_LSUPCPP := $(shell mkdir -p $(PRE_OUTPUT_DIR) && lipo ${_LSUPCPP} -thin ${M_ARCH} -output $(PRE_OUTPUT_DIR)/libsupc++.a && echo $(PRE_OUTPUT_DIR)/libsupc++.a)
endif
endif
ifneq (${_LSUPCPP},libsupc++.a)
_LSUPCPP_OBJ := $(shell $(AR) t ${_LSUPCPP})
_LSUPCPP_AUX_OBJ := $(addprefix $(AUX_DIR)/,${_LSUPCPP_OBJ})
_LSUPCPP_TSMP := .supc++
_LSUPCPP_AUX_TSMP:= $(AUX_DIR)/$(_LSUPCPP_TSMP)
endif
# ifeq ($(CXX_VERSION_MAJOR),3)
# Include whole language support archive (libsupc++.a) into libstlport:
# all C++ issues are in libstlport now.
ifeq ($(OSNAME),linux)
START_OBJ := $(shell for o in crti.o crtbeginS.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
#START_A_OBJ := $(shell for o in crti.o crtbeginT.o; do ${CXX} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtendS.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = -Wl,--whole-archive -lsupc++ ${_LGCC_EH} -Wl,--no-whole-archive ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),openbsd)
START_OBJ := $(shell for o in crtbeginS.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtendS.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = -Wl,--whole-archive -lsupc++ ${_LGCC_EH} -Wl,--no-whole-archive ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),freebsd)
# FreeBSD < 5.3 should use -lc_r, while FreeBSD >= 5.3 use -lpthread
PTHR := $(shell if [ ${OSREL_MAJOR} -gt 5 ] ; then echo "pthread" ; else if [ ${OSREL_MAJOR} -lt 5 ] ; then echo "c_r" ; else if [ ${OSREL_MINOR} -lt 3 ] ; then echo "c_r" ; else echo "pthread"; fi ; fi ; fi)
START_OBJ := $(shell for o in crti.o crtbeginS.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtendS.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS := -Wl,--whole-archive -lsupc++ ${_LGCC_EH} -Wl,--no-whole-archive ${_LGCC_S} -l${PTHR} -lc -lm
endif
ifeq ($(OSNAME),netbsd)
START_OBJ := $(shell for o in crti.o crtbeginS.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtendS.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS = -Wl,--whole-archive -lsupc++ ${_LGCC_EH} -Wl,--no-whole-archive ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),sunos)
START_OBJ := $(shell for o in crti.o crtbegin.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
END_OBJ := $(shell for o in crtend.o crtn.o; do ${CXX} ${CXXFLAGS} -print-file-name=$$o; done)
STDLIBS := -Wl,-zallextract -lsupc++ ${_LGCC_EH} -Wl,-zdefaultextract ${_LGCC_S} -lpthread -lc -lm
endif
ifeq ($(OSNAME),darwin)
ifndef USE_STATIC_LIBGCC
# MacOS X, shared-libgcc
ifeq ($(MACOSX_TEN_FIVE),true)
# MacOS X >= 10.5
START_OBJ :=
else
# MacOS X < 10.5
START_OBJ :=
endif
else
# MacOS X, not shared-libgcc
START_OBJ :=
endif
END_OBJ :=
# -all_load don't demonstrate any visible effect, looks like
# this is dummy option; but nevertheless, with _LSUPCPP_AUX_OBJ
# trick (as in static library) we can resolve problem, in potential
ifdef GCC_APPLE_CC
STDLIBS := ${_LGCC_S} -lc -lm -all_load ${_LSUPCPP} ${_LGCC_EH}
else
LDFLAGS += -single_module
STDLIBS := ${_LGCC_S} -lc -lm -all_load -lsupc++ ${_LGCC_EH}
endif
endif
#END_A_OBJ := $(shell for o in crtn.o; do ${CXX} -print-file-name=$$o; done)
# endif
ifneq ($(OSNAME),cygming)
NOSTDLIB := -nostdlib
else
NOSTDLIB := -nodefaultlibs
ifndef USE_STATIC_LIBGCC
ifeq ($(shell ${CXX} ${CXXFLAGS} -print-file-name=libgcc_s.a),libgcc_s.a)
_LGCC_S := -lgcc
else
_LGCC_S := -lgcc_s
endif
else
_LGCC_S := -lgcc
endif
ifeq ($(OSREALNAME),mingw)
STDLIBS = -lsupc++ ${_LGCC_S} -lm -lmoldname -lmingw32 -lmingwex -lmsvcrt -lkernel32
else
LIBSUPC++ := $(shell ${CXX} ${CXXFLAGS} -print-file-name=libsupc++.a)
LSUPC++DEF := $(PRE_OUTPUT_DIR)/libsupc++.def
$(LSUPC++DEF) : $(LIBSUPC++)
dlltool --export-all-symbols --output-def=$(LSUPC++DEF) $(LIBSUPC++)
ifneq (,$(findstring no-cygwin,$(EXTRA_CXXFLAGS)))
STDLIBS = -Wl,-whole-archive -lsupc++ -Wl,-no-whole-archive ${_LGCC_S} -lm -lmoldname -lmingw32 -lmingwex -lmsvcrt -lkernel32
else
STDLIBS = -Wl,-whole-archive -lsupc++ -Wl,--no-whole-archive ${_LGCC_S} -lpthread -lm -lc -lkernel32
endif
endif
endif
else
ifndef WITHOUT_STLPORT
ifndef STLP_BUILD
STDLIBS = ${STLPORT_LIB}
else
STDLIBS =
endif
else
STDLIBS =
endif
endif
ifneq ($(OSNAME),darwin)
dbg-shared: LDFLAGS += -shared
stldbg-shared: LDFLAGS += -shared
release-shared: LDFLAGS += -shared
endif
ifeq ($(OSNAME),hp-ux)
dbg-shared: LDFLAGS += -Wl,-dynamic -Wl,+h$(SO_NAME_DBGxx)
stldbg-shared: LDFLAGS += -Wl,-dynamic -Wl,+h$(SO_NAME_STLDBGxx)
release-shared: LDFLAGS += -Wl,-dynamic -Wl,+h$(SO_NAMExx)
endif
ifeq ($(OSNAME),sunos)
dbg-shared: LDFLAGS += -Wl,-h$(SO_NAME_DBGxx) ${NOSTDLIB}
stldbg-shared: LDFLAGS += -Wl,-h$(SO_NAME_STLDBGxx) ${NOSTDLIB}
release-shared: LDFLAGS += -Wl,-h$(SO_NAMExx) ${NOSTDLIB}
endif
ifeq ($(OSNAME),linux)
dbg-shared: LDFLAGS += -Wl,-h$(SO_NAME_DBGxx) ${NOSTDLIB}
stldbg-shared: LDFLAGS += -Wl,-h$(SO_NAME_STLDBGxx) ${NOSTDLIB}
release-shared: LDFLAGS += -Wl,-h$(SO_NAMExx) ${NOSTDLIB}
endif
ifeq ($(OSNAME),cygming)
ifndef USE_STATIC_LIBGCC
dbg-shared: LDFLAGS += -shared-libgcc
stldbg-shared: LDFLAGS += -shared-libgcc
release-shared: LDFLAGS += -shared-libgcc
endif
dbg-shared: LDFLAGS += -Wl,--out-implib=${LIB_NAME_OUT_DBG},--enable-auto-image-base ${NOSTDLIB}
stldbg-shared: LDFLAGS += -Wl,--out-implib=${LIB_NAME_OUT_STLDBG},--enable-auto-image-base ${NOSTDLIB}
release-shared: LDFLAGS += -Wl,--out-implib=${LIB_NAME_OUT},--enable-auto-image-base ${NOSTDLIB}
dbg-static: LDFLAGS += -static
stldbg-static: LDFLAGS += -static
release-static: LDFLAGS += -static
endif
ifeq ($(OSNAME),freebsd)
dbg-shared: LDFLAGS += -Wl,-h$(SO_NAME_DBGxx) ${NOSTDLIB}
stldbg-shared: LDFLAGS += -Wl,-h$(SO_NAME_STLDBGxx) ${NOSTDLIB}
release-shared: LDFLAGS += -Wl,-h$(SO_NAMExx) ${NOSTDLIB}
endif
ifeq ($(OSNAME),darwin)
CURRENT_VERSION := ${MAJOR}.${MINOR}.${PATCH}
COMPATIBILITY_VERSION := $(CURRENT_VERSION)
dbg-shared: LDFLAGS += -dynamic -dynamiclib -compatibility_version $(COMPATIBILITY_VERSION) -current_version $(CURRENT_VERSION) -install_name $(SO_NAME_DBGxx) ${NOSTDLIB}
stldbg-shared: LDFLAGS += -dynamic -dynamiclib -compatibility_version $(COMPATIBILITY_VERSION) -current_version $(CURRENT_VERSION) -install_name $(SO_NAME_STLDBGxx) ${NOSTDLIB}
release-shared: LDFLAGS += -dynamic -dynamiclib -compatibility_version $(COMPATIBILITY_VERSION) -current_version $(CURRENT_VERSION) -install_name $(SO_NAMExx) ${NOSTDLIB}
dbg-static: LDFLAGS += -staticlib
stldbg-static: LDFLAGS += -staticlib
release-static: LDFLAGS += -staticlib
endif
ifeq ($(OSNAME),openbsd)
dbg-shared: LDFLAGS += -Wl,-soname -Wl,$(SO_NAME_DBGxx) ${NOSTDLIB}
stldbg-shared: LDFLAGS += -Wl,-soname -Wl,$(SO_NAME_STLDBGxx) ${NOSTDLIB}
release-shared: LDFLAGS += -Wl,-soname -Wl,$(SO_NAMExx) ${NOSTDLIB}
endif
@@ -0,0 +1,19 @@
# -*- makefile -*- Time-stamp: <08/06/12 15:00:07 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
OPT += -KPIC
ifeq ($(OSNAME),linux)
dbg-shared: LDFLAGS += -shared -Wl,-h$(SO_NAME_DBGxx)
stldbg-shared: LDFLAGS += -shared -Wl,-h$(SO_NAME_STLDBGxx)
release-shared: LDFLAGS += -shared -Wl,-h$(SO_NAMExx)
endif
@@ -0,0 +1,38 @@
# -*- makefile -*- Time-stamp: <07/05/31 22:11:48 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
# Static libraries tags
PHONY += release-static dbg-static stldbg-static
ifneq ($(_LSUPCPP_OBJ),"")
$(_LSUPCPP_AUX_TSMP): $(_LSUPCPP)
if [ ! -d $(AUX_DIR) ]; then mkdir -p $(AUX_DIR); fi
cd $(AUX_DIR); $(AR) xo $(_LSUPCPP) && touch -r $(_LSUPCPP) $(_LSUPCPP_TSMP)
endif
release-static: $(OUTPUT_DIR_A) ${A_NAME_OUT}
dbg-static: $(OUTPUT_DIR_A_DBG) ${A_NAME_OUT_DBG}
stldbg-static: $(OUTPUT_DIR_A_STLDBG) ${A_NAME_OUT_STLDBG}
${A_NAME_OUT}: $(OBJ_A) $(_LSUPCPP_AUX_TSMP)
rm -f $@
$(AR) $(AR_INS_R) $(AR_OUT) $(OBJ_A) $(_LSUPCPP_AUX_OBJ)
${A_NAME_OUT_DBG}: $(OBJ_A_DBG) $(_LSUPCPP_AUX_TSMP)
rm -f $@
$(AR) $(AR_INS_R) $(AR_OUT) $(OBJ_A_DBG) $(_LSUPCPP_AUX_OBJ)
${A_NAME_OUT_STLDBG}: $(OBJ_A_STLDBG) $(_LSUPCPP_AUX_TSMP)
rm -f $@
$(AR) $(AR_INS_R) $(AR_OUT) $(OBJ_A_STLDBG) $(_LSUPCPP_AUX_OBJ)
@@ -0,0 +1,34 @@
# -*- makefile -*- Time-stamp: <06/11/02 10:34:43 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
PHONY += install-release-static install-dbg-static install-stldbg-static
install-release-static: release-static
@if [ ! -d $(INSTALL_LIB_DIR) ] ; then \
mkdir -p $(INSTALL_LIB_DIR) ; \
fi
$(INSTALL_A) ${A_NAME_OUT} $(INSTALL_LIB_DIR)
install-dbg-static: dbg-static
@if [ ! -d $(INSTALL_LIB_DIR_DBG) ] ; then \
mkdir -p $(INSTALL_LIB_DIR_DBG) ; \
fi
$(INSTALL_A) ${A_NAME_OUT_DBG} $(INSTALL_LIB_DIR_DBG)
ifndef WITHOUT_STLPORT
install-stldbg-static: stldbg-static
@if [ ! -d $(INSTALL_LIB_DIR_STLDBG) ] ; then \
mkdir -p $(INSTALL_LIB_DIR_STLDBG) ; \
fi
$(INSTALL_A) ${A_NAME_OUT_STLDBG} $(INSTALL_LIB_DIR_STLDBG)
endif
@@ -0,0 +1,37 @@
# -*- makefile -*- Time-stamp: <07/06/08 23:34:51 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
LDFLAGS ?=
ifneq ("$(findstring $(OSNAME),darwin cygming)","")
include ${RULESBASE}/gmake/${OSNAME}/lib.mak
else
include ${RULESBASE}/gmake/unix/lib.mak
endif
include ${RULESBASE}/gmake/lib/${COMPILER_NAME}.mak
ifneq ("$(findstring $(OSNAME),cygming)","")
include ${RULESBASE}/gmake/${OSNAME}/rules-so.mak
else
include ${RULESBASE}/gmake/unix/rules-so.mak
endif
include ${RULESBASE}/gmake/lib/rules-a.mak
ifneq ("$(findstring $(OSNAME),cygming)","")
include ${RULESBASE}/gmake/${OSNAME}/rules-install-so.mak
else
include ${RULESBASE}/gmake/unix/rules-install-so.mak
endif
include ${RULESBASE}/gmake/lib/rules-install-a.mak
include ${RULESBASE}/gmake/lib/clean.mak
@@ -0,0 +1,40 @@
# -*- makefile -*- Time-stamp: <07/03/08 21:35:57 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
# Oh, the commented below work for gmake 3.78.1 and above,
# but phrase without tag not work for it. Since gmake 3.79
# tag with assignment fail, but work assignment for all tags
# (really that more correct).
LDLIBS ?=
LDSEARCH += /LIBPATH:"$(MSVC_LIB_DIR)"
dbg-shared: OPT += /MDd
stldbg-shared: OPT += /MDd
release-shared: OPT += /MD
release-shared-dep: OPT += /MD
dbg-static: OPT += /MTd
stldbg-static: OPT += /MTd
release-static: OPT += /MT
release-static: DEFS += /D_LIB
dbg-static: DEFS += /D_LIB
stldbg-static: DEFS += /D_LIB
dbg-shared: LDFLAGS += /DLL ${LDSEARCH}
stldbg-shared: LDFLAGS += /DLL ${LDSEARCH}
release-shared: LDFLAGS += /DLL ${LDSEARCH}
dbg-static: LDFLAGS += ${LDSEARCH}
stldbg-static: LDFLAGS += ${LDSEARCH}
release-static: LDFLAGS += ${LDSEARCH}
LDFLAGS += /VERSION:$(MAJOR).$(MINOR)
@@ -0,0 +1,28 @@
# Time-stamp: <06/11/10 23:43:27 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
INSTALL := /usr/bin/install
STRIP := /usr/bin/strip
install-strip: _INSTALL_STRIP_OPTION = -s
install-strip: _SO_STRIP_OPTION = -S
INSTALL_SO := ${INSTALL} -c -m 0755 ${_INSTALL_STRIP_OPTION}
INSTALL_A := ${INSTALL} -c -m 0644
INSTALL_EXE := ${INSTALL} -c -m 0755
INSTALL_D := ${INSTALL} -d -m 0755
INSTALL_F := ${INSTALL} -c -p -m 0644
# bash's built-in test is like extern
# EXT_TEST := /usr/bin/test
EXT_TEST := test
@@ -0,0 +1,22 @@
# Time-stamp: <07/03/08 21:52:04 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
SO := so
ARCH := a
ifdef TARGET_OS
AR := ${TARGET_OS}-ar
else
AR := ar
endif
AR_INS_R := -rs
AR_EXTR := -x
AR_OUT = $@
@@ -0,0 +1,10 @@
# Time-stamp: <05/09/09 21:10:45 ptr>
# $Id$
INSTALL := /usr/bin/install
INSTALL_SO := ${INSTALL} -c -m 0755
INSTALL_A := ${INSTALL} -c -m 0644
INSTALL_EXE := ${INSTALL} -c -m 0755
EXT_TEST := /usr/bin/test
@@ -0,0 +1,10 @@
# Time-stamp: <05/09/09 21:07:53 ptr>
# $Id$
SO := so
ARCH := a
AR := ar
AR_INS_R := -r
AR_EXTR := -x
AR_OUT = $@
@@ -0,0 +1,12 @@
# Time-stamp: <06/11/01 22:55:23 ptr>
#
# Copyright (c) 2006, 2007
# Petr Ovtchenkov
#
# Licensed under the Academic Free License version 3.0
#
# Do the same target in all catalogs as arg
define doinsubdirs
$(foreach d,$(1),${MAKE} -C ${d} $@;)
endef
@@ -0,0 +1,18 @@
# Time-stamp: <07/03/08 21:48:24 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
INSTALL := /usr/ucb/install
INSTALL_SO := ${INSTALL} -c -m 0755
INSTALL_A := ${INSTALL} -c -m 0644
INSTALL_EXE := ${INSTALL} -c -m 0755
EXT_TEST := /usr/bin/test
@@ -0,0 +1,18 @@
# Time-stamp: <07/03/08 21:48:37 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
SO := so
ARCH := a
AR := ar
AR_INS_R := -rs
AR_EXTR := -x
AR_OUT = $@
@@ -0,0 +1,98 @@
# Time-stamp: <07/08/16 09:13:19 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifndef BUILD_DATE
ifndef TARGET_OS
OSNAME := $(shell uname -s | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
ifeq ($(OSNAME),darwin)
OSREALNAME := $(shell sw_vers -productName | tr '[A-Z]' '[a-z]' | tr -d ', /\\()"')
endif
# RedHat use nonstandard options for uname at least in cygwin,
# macro should be overwritten:
ifeq (cygwin,$(findstring cygwin,$(OSNAME)))
OSNAME := cygming
OSREALNAME := $(shell uname -o | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
endif
ifeq (mingw,$(findstring mingw,$(OSNAME)))
OSNAME := cygming
OSREALNAME := mingw
endif
OSREL := $(shell uname -r | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
ifeq ($(OSNAME),darwin)
OSREL := $(shell sw_vers -productVersion | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
endif
M_ARCH := $(shell uname -m | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
ifeq ($(M_ARCH),power-macintosh)
M_ARCH := ppc
endif
ifeq ($(OSNAME),hp-ux)
P_ARCH := unknown
else
P_ARCH := $(shell uname -p | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
endif
else
OSNAME := $(shell echo ${TARGET_OS} | sed 's/^[a-z0-9_]\+-[a-z0-9]\+-\([a-z]\+\).*/\1/' | sed 's/^[a-z0-9_]\+-\([a-z]\+\).*/\1/' )
OSREL := $(shell echo ${TARGET_OS} | sed 's/^[[:alnum:]_]\+-[a-z0-9]\+-[a-z]\+\([a-zA-Z.0-9]*\).*/\1/' | sed 's/^[a-z0-9_]\+-[a-z]\+\([a-zA-Z.0-9]*\).*/\1/' )
M_ARCH := $(shell echo ${TARGET_OS} | sed 's/^\([a-z0-9_]\+\)-.*/\1/' )
P_ARCH := unknown
# TARGET_OS
endif
NODENAME := $(shell uname -n | tr '[A-Z]' '[a-z]' )
SYSVER := $(shell uname -v )
USER := $(shell echo $$USER )
ifeq ($(OSNAME),freebsd)
OSREL_MAJOR := $(shell echo ${OSREL} | tr '.-' ' ' | awk '{print $$1;}')
OSREL_MINOR := $(shell echo ${OSREL} | tr '.-' ' ' | awk '{print $$2;}')
endif
ifeq ($(OSNAME),darwin)
OSREL_MAJOR := $(shell echo ${OSREL} | tr '.-' ' ' | awk '{print $$1;}')
OSREL_MINOR := $(shell echo ${OSREL} | tr '.-' ' ' | awk '{print $$2;}')
MACOSX_TEN_FIVE := $(shell if [ ${OSREL_MAJOR} -lt 10 ]; then echo false; else if [ ${OSREL_MAJOR} -gt 10 ] ; then echo true; else if [ ${OSREL_MINOR} -lt 5 ]; then echo false; else echo true; fi; fi; fi)
endif
# OS_VER := $(shell uname -s | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',_')
BUILD_SYSTEM := $(shell echo `uname -n` `uname -s` `uname -r` `uname -v` `uname -m` $$USER)
BUILD_DATE := $(shell date +'%Y/%m/%d %T %Z')
BUILD_OSNAME := $(shell uname -s | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
# RedHat use nonstandard options for uname at least in cygwin,
# macro should be overwritten:
ifeq (cygwin,$(findstring cygwin,$(BUILD_OSNAME)))
BUILD_OSNAME := cygming
BUILD_OSREALNAME := $(shell uname -o | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
endif
ifeq (mingw,$(findstring mingw,$(BUILD_OSNAME)))
BUILD_OSNAME := cygming
BUILD_OSREALNAME := mingw
endif
BUILD_OSREL := $(shell uname -r | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
BUILD_M_ARCH := $(shell uname -m | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
ifeq ($(OSNAME),hp-ux)
BUILD_P_ARCH := unknown
else
BUILD_P_ARCH := $(shell uname -p | tr '[A-Z]' '[a-z]' | tr ', /\\()"' ',//////' | tr ',/' ',-')
endif
# end of BUILD_DATE not defined
endif
@@ -0,0 +1,99 @@
# Time-stamp: <08/02/28 10:30:06 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifdef TARGET_OS
TARGET_NAME := ${TARGET_OS}-
else
TARGET_NAME :=
endif
BASE_OUTPUT_DIR := obj
PRE_OUTPUT_DIR := $(BASE_OUTPUT_DIR)/$(TARGET_NAME)$(COMPILER_NAME)
OUTPUT_DIR := $(PRE_OUTPUT_DIR)/so$(EXTRA_DIRS)
OUTPUT_DIR_DBG := $(PRE_OUTPUT_DIR)/so_g$(EXTRA_DIRS)
ifndef WITHOUT_STLPORT
OUTPUT_DIR_STLDBG := $(PRE_OUTPUT_DIR)/so_stlg$(EXTRA_DIRS)
endif
# file to store generated dependencies for make:
DEPENDS_COLLECTION := $(PRE_OUTPUT_DIR)/.make.depend
# catalog for auxilary files, if any
AUX_DIR := $(PRE_OUTPUT_DIR)/.auxdir
# I use the same catalog, as for shared:
OUTPUT_DIR_A := $(OUTPUT_DIR)
OUTPUT_DIR_A_DBG := $(OUTPUT_DIR_DBG)
ifndef WITHOUT_STLPORT
OUTPUT_DIR_A_STLDBG := $(OUTPUT_DIR_STLDBG)
endif
BASE_INSTALL_DIR ?= /usr/local
BASE_INSTALL_LIB_DIR ?= $(DESTDIR)${BASE_INSTALL_DIR}
BASE_INSTALL_BIN_DIR ?= $(DESTDIR)${BASE_INSTALL_DIR}
BASE_INSTALL_HDR_DIR ?= $(DESTDIR)${BASE_INSTALL_DIR}
INSTALL_LIB_DIR ?= ${BASE_INSTALL_LIB_DIR}/${TARGET_NAME}lib
INSTALL_LIB_DIR_DBG ?= ${BASE_INSTALL_LIB_DIR}/${TARGET_NAME}lib
ifndef WITHOUT_STLPORT
INSTALL_LIB_DIR_STLDBG ?= ${BASE_INSTALL_LIB_DIR}/${TARGET_NAME}lib
endif
INSTALL_BIN_DIR ?= ${BASE_INSTALL_BIN_DIR}/${TARGET_NAME}bin
INSTALL_BIN_DIR_DBG ?= ${INSTALL_BIN_DIR}_g
ifndef WITHOUT_STLPORT
INSTALL_BIN_DIR_STLDBG ?= ${INSTALL_BIN_DIR}_stlg
endif
INSTALL_HDR_DIR ?= ${BASE_INSTALL_DIR}/include
ifndef WITHOUT_STLPORT
OUTPUT_DIRS := $(OUTPUT_DIR) $(OUTPUT_DIR_DBG) $(OUTPUT_DIR_STLDBG) \
$(OUTPUT_DIR_A) $(OUTPUT_DIR_A_DBG) $(OUTPUT_DIR_A_STLDBG)
else
OUTPUT_DIRS := $(OUTPUT_DIR) $(OUTPUT_DIR_DBG) \
$(OUTPUT_DIR_A) $(OUTPUT_DIR_A_DBG)
endif
ifndef WITHOUT_STLPORT
INSTALL_LIB_DIRS := $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR_DBG) $(INSTALL_LIB_DIR_STLDBG)
INSTALL_BIN_DIRS := $(INSTALL_BIN_DIR) $(INSTALL_BIN_DIR_DBG) $(INSTALL_BIN_DIR_STLDBG)
else
INSTALL_LIB_DIRS := $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR_DBG)
INSTALL_BIN_DIRS := $(INSTALL_BIN_DIR) $(INSTALL_BIN_DIR_DBG)
endif
# sort will remove duplicates:
OUTPUT_DIRS := $(sort $(OUTPUT_DIRS))
INSTALL_LIB_DIRS := $(sort $(INSTALL_LIB_DIRS))
INSTALL_BIN_DIRS := $(sort $(INSTALL_BIN_DIRS))
INSTALL_DIRS := $(sort $(INSTALL_LIB_DIRS) $(INSTALL_BIN_DIRS))
PHONY += $(OUTPUT_DIRS) $(INSTALL_DIRS) $(AUX_DIR)
define createdirs
@for d in $@ ; do \
if [ -e $$d -a -f $$d ] ; then \
echo "ERROR: Regular file $$d present, directory instead expected" ; \
exit 1; \
elif [ ! -d $$d ] ; then \
mkdir -p $$d ; \
fi ; \
done
endef
$(OUTPUT_DIRS):
$(createdirs)
$(INSTALL_DIRS):
$(createdirs)
$(AUX_DIR):
$(createdirs)
@@ -0,0 +1,169 @@
# Time-stamp: <07/05/30 23:59:42 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
PRGS_DIR_SRC =
define prog_
PRGS_DIR_SRC += $$(dir $${$(1)_SRC_CPP} $${$(1)_SRC_CC} $${$(1)_SRC_CXX} $${$(1)_SRC_C} $${$(1)_SRC_S} )
$(1)_ALLBASE := $$(basename $$(notdir $${$(1)_SRC_CC} $${$(1)_SRC_CPP} $${$(1)_SRC_CXX} $${$(1)_SRC_C} $${$(1)_SRC_S} ) )
$(1)_ALLOBJS := $$(addsuffix .o,$${$(1)_ALLBASE})
$(1)_ALLDEPS := $$(addsuffix .d,$${$(1)_ALLBASE})
$(1)_OBJ := $$(addprefix $$(OUTPUT_DIR)/,$${$(1)_ALLOBJS})
$(1)_OBJ_DBG := $$(addprefix $$(OUTPUT_DIR_DBG)/,$${$(1)_ALLOBJS})
$(1)_OBJ_STLDBG := $$(addprefix $$(OUTPUT_DIR_STLDBG)/,$${$(1)_ALLOBJS})
$(1)_DEP := $$(addprefix $$(OUTPUT_DIR)/,$${$(1)_ALLDEPS})
$(1)_DEP_DBG := $$(addprefix $$(OUTPUT_DIR_DBG)/,$${$(1)_ALLDEPS})
$(1)_DEP_STLDBG := $$(addprefix $$(OUTPUT_DIR_STLDBG)/,$${$(1)_ALLDEPS})
$(1)_RES := $$(addprefix $$(OUTPUT_DIR)/,$${$(1)_ALLRESS})
$(1)_RES_DBG := $$(addprefix $$(OUTPUT_DIR_DBG)/,$${$(1)_ALLRESS})
$(1)_RES_STLDBG := $$(addprefix $$(OUTPUT_DIR_STLDBG)/,$${$(1)_ALLRESS})
ifeq ("$$(sort $${$(1)_SRC_CC} $${$(1)_SRC_CPP} $${$(1)_SRC_CXX})","")
$(1)_NOT_USE_NOSTDLIB := 1
_$(1)_C_SOURCES_ONLY := true
endif
endef
$(foreach prg,$(PRGNAMES),$(eval $(call prog_,$(prg))))
# If we have no C++ sources, let's use C compiler for linkage instead of C++.
ifeq ("$(sort ${SRC_CC} ${SRC_CPP} ${SRC_CXX})","")
NOT_USE_NOSTDLIB := 1
_C_SOURCES_ONLY := true
endif
# if sources disposed in several dirs, calculate appropriate rules
DIRS_UNIQUE_SRC := $(dir $(SRC_CPP) $(SRC_CC) $(SRC_CXX) $(SRC_C) $(SRC_S) )
ifeq (${OSNAME},cygming)
DIRS_UNIQUE_SRC := ${DIRS_UNIQUE_SRC} $(dir $(SRC_RC) )
endif
DIRS_UNIQUE_SRC := $(sort $(DIRS_UNIQUE_SRC) $(PRGS_DIR_SRC))
# The rules below may be even simpler (i.e. define macro that generate
# rules for COMPILE.xx), but this GNU make 3.80 unhappy with it;
# GNU make 3.81 work fine, but 3.81 is new...
# The code below verbose, but this is price for compatibility with 3.80
define rule_o
$$(OUTPUT_DIR$(1))/%.o: $(2)%.cc
$$(COMPILE.cc) $$(OUTPUT_OPTION) $$<
$$(OUTPUT_DIR$(1))/%.d: $(2)%.cc
@$$(COMPILE.cc) $$(CCDEPFLAGS) $$< $$(DP_OUTPUT_DIR$(1))
$$(OUTPUT_DIR$(1))/%.o: $(2)%.cpp
$$(COMPILE.cc) $$(OUTPUT_OPTION) $$<
$$(OUTPUT_DIR$(1))/%.d: $(2)%.cpp
@$$(COMPILE.cc) $$(CCDEPFLAGS) $$< $$(DP_OUTPUT_DIR$(1))
$$(OUTPUT_DIR$(1))/%.o: $(2)%.cxx
$$(COMPILE.cc) $$(OUTPUT_OPTION) $$<
$$(OUTPUT_DIR$(1))/%.d: $(2)%.cxx
@$$(COMPILE.cc) $$(CCDEPFLAGS) $$< $$(DP_OUTPUT_DIR$(1))
$$(OUTPUT_DIR$(1))/%.o: $(2)%.c
$$(COMPILE.c) $$(OUTPUT_OPTION) $$<
$$(OUTPUT_DIR$(1))/%.d: $(2)%.c
@$$(COMPILE.c) $$(CCDEPFLAGS) $$< $$(DP_OUTPUT_DIR$(1))
$$(OUTPUT_DIR$(1))/%.o: $(2)%.s
$$(COMPILE.s) $$(OUTPUT_OPTION) $$<
$$(OUTPUT_DIR$(1))/%.o: $(2)%.S
$$(COMPILE.S) $$(OUTPUT_OPTION) $$<
$$(OUTPUT_DIR$(1))/%.d: $(2)%.S
@$$(COMPILE.S) $$(SDEPFLAGS) $$< $$(DP_OUTPUT_DIR$(1))
endef
define rule_rc
$$(OUTPUT_DIR$(1))/%.res: $(2)%.rc
$$(COMPILE.rc) $$(RC_OUTPUT_OPTION) $$<
endef
define rules_
$(call rule_o,,$(1))
ifneq ($(OUTPUT_DIR),$(OUTPUT_DIR_A))
$(call rule_o,_A,$(1))
endif
$(call rule_o,_DBG,$(1))
ifneq ($(OUTPUT_DIR_DBG),$(OUTPUT_DIR_A_DBG))
$(call rule_o,_A_DBG,$(1))
endif
ifndef WITHOUT_STLPORT
$(call rule_o,_STLDBG,$(1))
ifneq ($(OUTPUT_DIR_STLDBG),$(OUTPUT_DIR_A_STLDBG))
$(call rule_o,_A_STLDBG,$(1))
endif
endif
ifeq ($(OSNAME),cygming)
$(call rule_rc,,$(1))
$(call rule_rc,_DBG,$(1))
ifndef WITHOUT_STLPORT
$(call rule_rc,_STLDBG,$(1))
endif
endif
endef
$(foreach dir,$(DIRS_UNIQUE_SRC),$(eval $(call rules_,$(dir))))
ALLBASE := $(basename $(notdir $(SRC_CC) $(SRC_CPP) $(SRC_CXX) $(SRC_C) $(SRC_S)))
ifeq (${OSNAME},cygming)
RCBASE += $(basename $(notdir $(SRC_RC)))
endif
ALLOBJS := $(addsuffix .o,$(ALLBASE))
ALLDEPS := $(addsuffix .d,$(ALLBASE))
ALLRESS := $(addsuffix .res,$(RCBASE))
OBJ := $(addprefix $(OUTPUT_DIR)/,$(ALLOBJS))
OBJ_DBG := $(addprefix $(OUTPUT_DIR_DBG)/,$(ALLOBJS))
OBJ_STLDBG := $(addprefix $(OUTPUT_DIR_STLDBG)/,$(ALLOBJS))
DEP := $(addprefix $(OUTPUT_DIR)/,$(ALLDEPS))
DEP_DBG := $(addprefix $(OUTPUT_DIR_DBG)/,$(ALLDEPS))
DEP_STLDBG := $(addprefix $(OUTPUT_DIR_STLDBG)/,$(ALLDEPS))
RES := $(addprefix $(OUTPUT_DIR)/,$(ALLRESS))
RES_DBG := $(addprefix $(OUTPUT_DIR_DBG)/,$(ALLRESS))
RES_STLDBG := $(addprefix $(OUTPUT_DIR_STLDBG)/,$(ALLRESS))
ifeq ($(OUTPUT_DIR),$(OUTPUT_DIR_A))
OBJ_A := $(OBJ)
DEP_A := $(DEP)
else
OBJ_A := $(addprefix $(OUTPUT_DIR_A)/,$(ALLOBJS))
DEP_A := $(addprefix $(OUTPUT_DIR_A)/,$(ALLDEPS))
endif
ifeq ($(OUTPUT_DIR_DBG),$(OUTPUT_DIR_A_DBG))
OBJ_A_DBG := $(OBJ_DBG)
DEP_A_DBG := $(DEP_DBG)
else
OBJ_A_DBG := $(addprefix $(OUTPUT_DIR_A_DBG)/,$(ALLOBJS))
DEP_A_DBG := $(addprefix $(OUTPUT_DIR_A_DBG)/,$(ALLDEPS))
endif
ifeq ($(OUTPUT_DIR_STLDBG),$(OUTPUT_DIR_A_STLDBG))
OBJ_A_STLDBG := $(OBJ_STLDBG)
DEP_A_STLDBG := $(DEP_STLDBG)
else
OBJ_A_STLDBG := $(addprefix $(OUTPUT_DIR_A_STLDBG)/,$(ALLOBJS))
DEP_A_STLDBG := $(addprefix $(OUTPUT_DIR_A_STLDBG)/,$(ALLDEPS))
endif
+123
View File
@@ -0,0 +1,123 @@
# Time-stamp: <08/06/06 17:34:38 yeti>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2008
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
.SUFFIXES:
.SCCS_GET:
.RCS_GET:
PHONY ?=
RULESBASE ?= $(SRCROOT)/Makefiles
# include file, generated by configure, if available
-include ${RULESBASE}/gmake/config.mak
ifndef COMPILER_NAME
# gcc is default compiler, others specify explicitly;
COMPILER_NAME := gcc
endif
ifndef LDFLAGS
LDFLAGS :=
endif
ifndef ALL_TAGS
ifndef _NO_SHARED_BUILD
ALL_TAGS := release-shared
else
ALL_TAGS :=
endif
ifdef _STATIC_BUILD
ALL_TAGS += release-static
endif
ifndef _NO_DBG_BUILD
ifndef _NO_SHARED_BUILD
ALL_TAGS += dbg-shared
endif
ifdef _STATIC_BUILD
ALL_TAGS += dbg-static
endif
endif
ifndef _NO_STLDBG_BUILD
ifndef WITHOUT_STLPORT
ifndef _NO_SHARED_BUILD
ALL_TAGS += stldbg-shared
endif
ifdef _STATIC_BUILD
ALL_TAGS += stldbg-static
endif
endif
endif
endif
all: $(OUTPUT_DIRS) $(ALL_TAGS)
ifndef WITHOUT_STLPORT
all-static: release-static dbg-static stldbg-static
all-shared: release-shared dbg-shared stldbg-shared
else
all-static: release-static dbg-static
all-shared: release-shared dbg-shared
endif
ifdef WITHOUT_STLPORT
NOT_USE_NOSTDLIB := 1
endif
ifndef OSNAME
# identify OS and build date
include ${RULESBASE}/gmake/sysid.mak
endif
# OS-specific definitions, like ln, install, etc. (guest host)
include ${RULESBASE}/gmake/$(BUILD_OSNAME)/sys.mak
# target OS-specific definitions, like ar, etc.
include ${RULESBASE}/gmake/$(OSNAME)/targetsys.mak
# Extern projects for everyday usage and settings for ones
include ${RULESBASE}/gmake/extern.mak
# compiler, compiler options
include ${RULESBASE}/gmake/$(COMPILER_NAME).mak
# rules to make dirs for targets
include ${RULESBASE}/gmake/targetdirs.mak
# os-specific local rules (or other project-specific definitions)
-include specific.mak
LDFLAGS += ${EXTRA_LDFLAGS}
# derive common targets (*.o, *.d),
# build rules (including output catalogs)
include ${RULESBASE}/gmake/targets.mak
# dependency
include ${RULESBASE}/gmake/depend.mak
# general clean
include ${RULESBASE}/gmake/clean.mak
# if target is library, rules for library
ifdef LIBNAME
include ${RULESBASE}/gmake/lib/top.mak
endif
# if target is program, rules for executable
ifdef PRGNAME
include ${RULESBASE}/gmake/app/top.mak
else
ifdef PRGNAMES
include ${RULESBASE}/gmake/app/top.mak
endif
endif
.PHONY: $(PHONY)
@@ -0,0 +1,85 @@
# -*- makefile -*- Time-stamp: <06/11/02 10:37:02 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
DBG_SUFFIX ?= g
STLDBG_SUFFIX ?= stl${DBG_SUFFIX}
# Shared libraries:
ifndef LIB_MOTIF
SO_NAME := lib${LIBNAME}.$(SO)
else
SO_NAME := lib${LIBNAME}_${LIB_MOTIF}.${SO}
endif
SO_NAMEx := ${SO_NAME}.${MAJOR}
SO_NAMExx := ${SO_NAMEx}.${MINOR}
SO_NAMExxx := ${SO_NAMExx}.${PATCH}
SO_NAME_OUT := $(OUTPUT_DIR)/${SO_NAME}
SO_NAME_OUTx := $(OUTPUT_DIR)/${SO_NAMEx}
SO_NAME_OUTxx := $(OUTPUT_DIR)/${SO_NAMExx}
SO_NAME_OUTxxx := $(OUTPUT_DIR)/${SO_NAMExxx}
ifndef LIB_MOTIF
SO_NAME_DBG := lib${LIBNAME}${DBG_SUFFIX}.$(SO)
else
SO_NAME_DBG := lib${LIBNAME}${DBG_SUFFIX}_${LIB_MOTIF}.$(SO)
endif
SO_NAME_DBGx := ${SO_NAME_DBG}.${MAJOR}
SO_NAME_DBGxx := ${SO_NAME_DBGx}.${MINOR}
SO_NAME_DBGxxx := ${SO_NAME_DBGxx}.${PATCH}
SO_NAME_OUT_DBG := $(OUTPUT_DIR_DBG)/${SO_NAME_DBG}
SO_NAME_OUT_DBGx := $(OUTPUT_DIR_DBG)/${SO_NAME_DBGx}
SO_NAME_OUT_DBGxx := $(OUTPUT_DIR_DBG)/${SO_NAME_DBGxx}
SO_NAME_OUT_DBGxxx := $(OUTPUT_DIR_DBG)/${SO_NAME_DBGxxx}
ifndef WITHOUT_STLPORT
ifndef LIB_MOTIF
SO_NAME_STLDBG := lib${LIBNAME}${STLDBG_SUFFIX}.$(SO)
else
SO_NAME_STLDBG := lib${LIBNAME}${STLDBG_SUFFIX}_${LIB_MOTIF}.$(SO)
endif
SO_NAME_STLDBGx := ${SO_NAME_STLDBG}.${MAJOR}
SO_NAME_STLDBGxx := ${SO_NAME_STLDBGx}.${MINOR}
SO_NAME_STLDBGxxx := ${SO_NAME_STLDBGxx}.${PATCH}
SO_NAME_OUT_STLDBG := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBG}
SO_NAME_OUT_STLDBGx := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBGx}
SO_NAME_OUT_STLDBGxx := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBGxx}
SO_NAME_OUT_STLDBGxxx := $(OUTPUT_DIR_STLDBG)/${SO_NAME_STLDBGxxx}
# WITHOUT_STLPORT
endif
# Static libraries:
ifndef LIB_MOTIF
A_NAME := lib${LIBNAME}.$(ARCH)
else
A_NAME := lib${LIBNAME}_${LIB_MOTIF}.$(ARCH)
endif
A_NAME_OUT := $(OUTPUT_DIR_A)/$(A_NAME)
ifndef LIB_MOTIF
A_NAME_DBG := lib${LIBNAME}${DBG_SUFFIX}.$(ARCH)
else
A_NAME_DBG := lib${LIBNAME}${DBG_SUFFIX}_${LIB_MOTIF}.$(ARCH)
endif
A_NAME_OUT_DBG := $(OUTPUT_DIR_A_DBG)/$(A_NAME_DBG)
ifndef WITHOUT_STLPORT
ifndef LIB_MOTIF
A_NAME_STLDBG := lib${LIBNAME}${STLDBG_SUFFIX}.$(ARCH)
else
A_NAME_STLDBG := lib${LIBNAME}${STLDBG_SUFFIX}_${LIB_MOTIF}.$(ARCH)
endif
A_NAME_OUT_STLDBG := $(OUTPUT_DIR_A_STLDBG)/$(A_NAME_STLDBG)
endif
@@ -0,0 +1,173 @@
# -*- makefile -*- Time-stamp: <07/12/12 01:52:19 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
ifndef INSTALL_TAGS
ifndef _NO_SHARED_BUILD
INSTALL_TAGS := install-release-shared
else
INSTALL_TAGS :=
endif
ifdef _STATIC_BUILD
INSTALL_TAGS += install-release-static
endif
ifndef _NO_DBG_BUILD
ifndef _NO_SHARED_BUILD
INSTALL_TAGS += install-dbg-shared
endif
ifdef _STATIC_BUILD
INSTALL_TAGS += install-dbg-static
endif
endif
ifndef _NO_STLDBG_BUILD
ifndef WITHOUT_STLPORT
ifndef _NO_SHARED_BUILD
INSTALL_TAGS += install-stldbg-shared
endif
ifdef _STATIC_BUILD
INSTALL_TAGS += install-stldbg-static
endif
endif
endif
endif
ifndef INSTALL_STRIP_TAGS
ifndef _NO_SHARED_BUILD
INSTALL_STRIP_TAGS := install-strip-shared
else
INSTALL_STRIP_TAGS :=
endif
ifdef _STATIC_BUILD
INSTALL_STRIP_TAGS += install-release-static
endif
ifndef _NO_DBG_BUILD
ifndef _NO_SHARED_BUILD
INSTALL_STRIP_TAGS += install-dbg-shared
endif
ifdef _STATIC_BUILD
INSTALL_STRIP_TAGS += install-dbg-static
endif
endif
ifndef _NO_STLDBG_BUILD
ifndef WITHOUT_STLPORT
ifndef _NO_SHARED_BUILD
INSTALL_STRIP_TAGS += install-stldbg-shared
endif
ifdef _STATIC_BUILD
INSTALL_STRIP_TAGS += install-stldbg-static
endif
endif
endif
endif
PHONY += install install-strip install-headers $(INSTALL_TAGS) $(INSTALL_STRIP_TAGS)
install: $(INSTALL_TAGS) install-headers
install-strip: $(INSTALL_STRIP_TAGS) install-headers
# Workaround for GNU make 3.80; see comments in rules-so.mak
define do_install_so_links
$${INSTALL_LIB_DIR$(1)}/$${SO_NAME$(1)xxx}: $${SO_NAME_OUT$(1)xxx}
$$(INSTALL_SO) $${SO_NAME_OUT$(1)xxx} $$(INSTALL_LIB_DIR$(1))
@$(call do_so_links_1,$$(INSTALL_LIB_DIR$(1)),$${SO_NAME$(1)xx},$${SO_NAME$(1)xxx})
@$(call do_so_links_1,$$(INSTALL_LIB_DIR$(1)),$${SO_NAME$(1)x},$${SO_NAME$(1)xx})
@$(call do_so_links_1,$$(INSTALL_LIB_DIR$(1)),$${SO_NAME$(1)},$${SO_NAME$(1)x})
endef
# Workaround for GNU make 3.80; see comments in rules-so.mak
define do_install_so_links_wk
# expand to nothing, if equal
ifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_STLDBG}/${SO_NAME_STLDBGxxx})
# expand to nothing, if WITHOUT_STLPORT
ifndef WITHOUT_STLPORT
$(call do_install_so_links,$(1))
endif
endif
endef
# Workaround for GNU make 3.80; see comments in rules-so.mak
define do_install_so_links_wk2
# expand to nothing, if equal
ifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_DBG}/${SO_NAME_DBGxxx})
$(call do_install_so_links,$(1))
endif
endef
$(eval $(call do_install_so_links,))
# ifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_DBG}/${SO_NAME_DBGxxx})
# $(eval $(call do_install_so_links,_DBG))
$(eval $(call do_install_so_links_wk2,_DBG))
# endif
# ifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_STLDBG}/${SO_NAME_STLDBGxxx})
# ifndef WITHOUT_STLPORT
$(eval $(call do_install_so_links_wk,_STLDBG))
# endif
# endif
install-release-shared: release-shared $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR)/${SO_NAMExxx} install-headers
${POST_INSTALL}
install-strip-shared: release-shared $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR)/${SO_NAMExxx} install-headers
${STRIP} ${_SO_STRIP_OPTION} $(INSTALL_LIB_DIR)/${SO_NAMExxx}
${POST_INSTALL}
install-dbg-shared: dbg-shared $(INSTALL_LIB_DIR_DBG) $(INSTALL_LIB_DIR_DBG)/${SO_NAME_DBGxxx}
${POST_INSTALL_DBG}
ifndef WITHOUT_STLPORT
install-stldbg-shared: stldbg-shared $(INSTALL_LIB_DIR_STLDBG) $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGxxx}
${POST_INSTALL_STLDBG}
endif
define do_install_headers
if [ ! -d $(INSTALL_HDR_DIR) ]; then \
$(INSTALL_D) $(INSTALL_HDR_DIR) || { echo "Can't create $(INSTALL_HDR_DIR)"; exit 1; }; \
fi; \
for dd in $(HEADERS_BASE); do \
d=`dirname $$dd`; \
h=`basename $$dd`; \
f=`cd $$d; find $$h \( -wholename "*/.svn" -prune \) -o \( -type d -print \)`; \
for ddd in $$f; do \
if [ ! -d $(INSTALL_HDR_DIR)/$$ddd ]; then \
$(INSTALL_D) $(INSTALL_HDR_DIR)/$$ddd || { echo "Can't create $(INSTALL_HDR_DIR)/$$ddd"; exit 1; }; \
fi; \
done; \
f=`find $$dd \( -wholename "*/.svn*" -o -name "*~" -o -name "*.bak" \) -prune -o \( -type f -print \)`; \
for ff in $$f; do \
h=`echo $$ff | sed -e "s|$$d|$(INSTALL_HDR_DIR)|"`; \
$(INSTALL_F) $$ff $$h; \
done; \
done; \
for f in $(HEADERS); do \
h=`basename $$f`; \
$(INSTALL_F) $$f $(INSTALL_HDR_DIR)/$$h || { echo "Can't install $(INSTALL_HDR_DIR)/$$h"; exit 1; }; \
done
endef
# find $$dd \( -type f \( \! \( -wholename "*/.svn*" -o -name "*~" -o -name "*.bak" \) \) \) -print
# _HEADERS_FROM = $(shell for dd in $(HEADERS_BASE); do find $$dd \( -type f \( \! \( -wholename "*/.svn/*" -o -name "*~" -o -name "*.bak" \) \) \) -print ; done )
# _HEADERS_TO = $(foreach d,$(HEADERS_BASE),$(patsubst $(d)/%,$(BASE_INSTALL_DIR)include/%,$(_HEADERS_FROM)))
install-headers:
@$(do_install_headers)
@@ -0,0 +1,76 @@
# -*- makefile -*- Time-stamp: <06/12/12 09:43:02 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
# Shared libraries tags
PHONY += release-shared dbg-shared stldbg-shared
release-shared: $(EXTRA_PRE) $(OUTPUT_DIR) ${SO_NAME_OUTxxx} $(EXTRA_POST)
dbg-shared: $(EXTRA_PRE_DBG) $(OUTPUT_DIR_DBG) ${SO_NAME_OUT_DBGxxx} $(EXTRA_POST_DBG)
ifndef WITHOUT_STLPORT
stldbg-shared: $(EXTRA_PRE_STLDBG) $(OUTPUT_DIR_STLDBG) ${SO_NAME_OUT_STLDBGxxx} $(EXTRA_POST_STLDBG)
endif
define do_so_links_1
if [ -h $(1)/$(2) ]; then \
if [ `readlink $(1)/$(2)` != "$(3)" ]; then \
rm $(1)/$(2); \
ln -s $(3) $(1)/$(2); \
fi; \
else \
ln -s $(3) $(1)/$(2); \
fi;
endef
# Workaround for GNU make 3.80: it fail on 'eval' within 'if'
# directive after some level of complexity, i.e. after complex
# rules it fails on code:
#
# $(eval $(call do_so_links,cc,))
# $(eval $(call do_so_links,cc,_DBG))
# ifndef WITHOUT_STLPORT
# $(eval $(call do_so_links,cc,_STLDBG))
# endif
#
# Put 'if' logic into defined macro looks as workaround.
#
# The GNU make 3.81 free from this problem, but it new...
define do_so_links
$${SO_NAME_OUT$(1)xxx}: $$(OBJ$(1)) $$(LIBSDEP)
ifeq ("${_C_SOURCES_ONLY}","")
ifneq ($(COMPILER_NAME),bcc)
$$(LINK.cc) $$(LINK_OUTPUT_OPTION) $${START_OBJ} $$(OBJ$(1)) $$(LDLIBS) $${STDLIBS} $${END_OBJ}
else
$$(LINK.cc) $${START_OBJ} $$(OBJ$(1)) $${END_OBJ}, $$(LINK_OUTPUT_OPTION), , $$(LDLIBS) $${STDLIBS}
endif
else
$$(LINK.c) $$(LINK_OUTPUT_OPTION) $$(OBJ$(1)) $$(LDLIBS)
endif
@$(call do_so_links_1,$$(OUTPUT_DIR$(1)),$${SO_NAME$(1)xx},$${SO_NAME$(1)xxx})
@$(call do_so_links_1,$$(OUTPUT_DIR$(1)),$${SO_NAME$(1)x},$${SO_NAME$(1)xx})
@$(call do_so_links_1,$$(OUTPUT_DIR$(1)),$${SO_NAME$(1)},$${SO_NAME$(1)x})
endef
define do_so_links_wk
# expand to nothing, if WITHOUT_STLPORT
ifndef WITHOUT_STLPORT
$(call do_so_links,$(1))
endif
endef
$(eval $(call do_so_links,))
$(eval $(call do_so_links,_DBG))
# ifndef WITHOUT_STLPORT
$(eval $(call do_so_links_wk,_STLDBG))
# endif
+100
View File
@@ -0,0 +1,100 @@
# Time-stamp: <07/03/08 21:41:52 ptr>
#
# Copyright (c) 1997-1999, 2002, 2003, 2005-2007
# Petr Ovtchenkov
#
# Portion Copyright (c) 1999-2001
# Parallel Graphics Ltd.
#
# Licensed under the Academic Free License version 3.0
#
#INCLUDES = -I$(SRCROOT)/include
#INCLUDES :=
CXX := cl.exe
CC := cl.exe
LINK := link.exe
RC := rc.exe
DEFS ?=
OPT ?=
# OUTPUT_OPTION = /Fo$@
release-shared: OUTPUT_OPTION = /Fo$@
release-static: OUTPUT_OPTION = /Fo$@
dbg-shared : OUTPUT_OPTION = /Fo$@ /Fd"${OUTPUT_DIR_DBG}"
stldbg-shared : OUTPUT_OPTION = /Fo$@ /Fd"${OUTPUT_DIR_STLDBG}"
dbg-static : OUTPUT_OPTION = /Fo$@ /Fd"${OUTPUT_DIR_A_DBG}"
stldbg-static : OUTPUT_OPTION = /Fo$@ /Fd"${OUTPUT_DIR_A_STLDBG}"
LINK_OUTPUT_OPTION = /OUT:$@
RC_OUTPUT_OPTION = /fo $@
DEFS += /D "WIN32" /D "_WINDOWS"
CPPFLAGS = $(DEFS) $(INCLUDES)
CFLAGS = /nologo /TC /W3 /GR /GX /Zm800 $(OPT)
CXXFLAGS = /nologo /TP /W3 /GR /GX /Zm800 $(OPT)
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) /c
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) /c
LINK.cc = $(LINK) /nologo $(LDFLAGS) $(TARGET_ARCH)
COMPILE.rc = $(RC) $(RCFLAGS)
CDEPFLAGS = /FD /E
CCDEPFLAGS = /FD /E
# STLport DEBUG mode specific defines
stldbg-static : DEFS += /D_DEBUG /D "_STLP_DEBUG"
stldbg-shared : DEFS += /D_DEBUG /D "_STLP_DEBUG"
stldbg-static-dep : DEFS += /D_DEBUG /D "_STLP_DEBUG"
stldbg-shared-dep : DEFS += /D_DEBUG /D "_STLP_DEBUG"
dbg-static : DEFS += /D_DEBUG
dbg-shared : DEFS += /D_DEBUG
dbg-static-dep : DEFS += /D_DEBUG
dbg-shared-dep : DEFS += /D_DEBUG
release-static : DEFS += /DNDEBUG
release-shared : DEFS += /DNDEBUG
release-static-dep : DEFS += /DNDEBUG
release-shared-dep : DEFS += /DNDEBUG
# optimization and debug compiler flags
release-static : OPT += /O2 /Og
release-shared : OPT += /O2 /Og
dbg-static : OPT += /Zi
dbg-shared : OPT += /Zi
#dbg-static-dep : OPT += -g
#dbg-shared-dep : OPT += -g
stldbg-static : OPT += /Zi
stldbg-shared : OPT += /Zi
#stldbg-static-dep : OPT += -g
#stldbg-shared-dep : OPT += -g
# dependency output parser (dependencies collector)
# oh, there VC is no mode has no options to print dependencies
# in more-or-less acceptable format. I use VC as preprocessor
# and see first line (here VC print file name).
# bug here: if no dependencies:
# ---------------------------------
# int main() { return 0; }
# ---------------------------------
# this sed script produce wrong output
# ---------------------------------
# obj/vc6/shared/xx.o obj/vc6/shared/xx.d : obj/vc6/shared/xx.cpp \
# ---------------------------------
# (wrong backslash at eol)
DP_OUTPUT_DIR = | grep "^\#line 1 " | (echo -e 's|\([a-zA-Z]\):|/cygdrive/\1|g\nt next\n: next\n1s|^\#line 1 \(.*\)|$(OUTPUT_DIR)/$*.o $@ : $< \\\\|\nt\n$$s|^\#line 1 "\(.*\)"|\1|g\nt space\ns|^\#line 1 "\(.*\)"|\1\\\\|g\nt space\nd\n: space\ns| |\\\\ |g\ns|^| |\ns|\\\\\\\\|/|g\n' > $(OUTPUT_DIR)/tmp.sed; sed -f $(OUTPUT_DIR)/tmp.sed; rm -f $(OUTPUT_DIR)/tmp.sed ) > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_DBG = | grep "^\#line 1 " | (echo -e 's|\([a-zA-Z]\):|/cygdrive/\1|g\nt next\n: next\n1s|^\#line 1 \(.*\)|$(OUTPUT_DIR_DBG)/$*.o $@ : $< \\\\|\nt\n$$s|^\#line 1 "\(.*\)"|\1|g\nt space\ns|^\#line 1 "\(.*\)"|\1\\\\|g\nt space\nd\n: space\ns| |\\\\ |g\ns|^| |\ns|\\\\\\\\|/|g\n' > $(OUTPUT_DIR_DBG)/tmp.sed; sed -f $(OUTPUT_DIR_DBG)/tmp.sed; rm -f $(OUTPUT_DIR_DBG)/tmp.sed ) > $@; \
[ -s $@ ] || rm -f $@
DP_OUTPUT_DIR_STLDBG = | grep "^\#line 1 " | (echo -e 's|\([a-zA-Z]\):|/cygdrive/\1|g\nt next\n: next\n1s|^\#line 1 \(.*\)|$(OUTPUT_DIR_STLDBG)/$*.o $@ : $< \\\\|\nt\n$$s|^\#line 1 "\(.*\)"|\1|g\nt space\ns|^\#line 1 "\(.*\)"|\1\\\\|g\nt space\nd\n: space\ns| |\\\\ |g\ns|^| |\ns|\\\\\\\\|/|g\n' > $(OUTPUT_DIR_STLDBG)/tmp.sed; sed -f $(OUTPUT_DIR_STLDBG)/tmp.sed; rm -f $(OUTPUT_DIR_STLDBG)/tmp.sed ) > $@; \
[ -s $@ ] || rm -f $@
@@ -0,0 +1,50 @@
# -*- makefile -*- Time-stamp: <03/10/26 16:17:03 ptr>
# $Id$
clobber: clean
@if exist $(PRG) del /F /Q $(PRG)
@if exist $(PRG_DBG) del /F /Q $(PRG_DBG)
@if exist $(PRG_STLDBG) del /F /Q $(PRG_STLDBG)
@if exist $(PRG_A) del /F /Q $(PRG_A)
@if exist $(PRG_A_DBG) del /F /Q $(PRG_A_DBG)
@if exist $(PRG_A_STLDBG) del /F /Q $(PRG_A_STLDBG)
@if exist $(PDB_NAME_OUT) del /F /Q $(PDB_NAME_OUT)
@if exist $(PDB_NAME_OUT_DBG) del /F /Q $(PDB_NAME_OUT_DBG)
@if exist $(PDB_NAME_OUT_STLDBG) del /F /Q $(PDB_NAME_OUT_STLDBG)
@if exist $(MANIFEST_NAME_OUT) del /F /Q $(MANIFEST_NAME_OUT)
@if exist $(MANIFEST_NAME_OUT_DBG) del /F /Q $(MANIFEST_NAME_OUT_DBG)
@if exist $(MANIFEST_NAME_OUT_STLDBG) del /F /Q $(MANIFEST_NAME_OUT_STLDBG)
@if exist $(A_PDB_NAME_OUT) del /F /Q $(A_PDB_NAME_OUT)
@if exist $(A_PDB_NAME_OUT_DBG) del /F /Q $(A_PDB_NAME_OUT_DBG)
@if exist $(A_PDB_NAME_OUT_STLDBG) del /F /Q $(A_PDB_NAME_OUT_STLDBG)
@-if exist $(OUTPUT_DIR) rd $(OUTPUT_DIR)
@-if exist $(OUTPUT_DIR_DBG) rd $(OUTPUT_DIR_DBG)
@-if exist $(OUTPUT_DIR_STLDBG) rd $(OUTPUT_DIR_STLDBG)
@-if exist $(OUTPUT_DIR_A) rd $(OUTPUT_DIR_A)
@-if exist $(OUTPUT_DIR_A_DBG) rd $(OUTPUT_DIR_A_DBG)
@-if exist $(OUTPUT_DIR_A_STLDBG) rd $(OUTPUT_DIR_A_STLDBG)
@-if exist $(OUTPUT_TARGET_DIR) rd $(OUTPUT_TARGET_DIR)
@-if exist $(OUTPUT_ROOT_DIR) rd $(OUTPUT_ROOT_DIR)
distclean: clobber
@if exist $(INSTALL_BIN_DIR)\$(PRG_NAME_BASE)$(EXE) del /F /Q $(INSTALL_BIN_DIR)\$(PRG_NAME_BASE)$(EXE)
@if exist $(INSTALL_BIN_DIR_DBG)\$(PRG_NAME_DBG_BASE)$(EXE) del /F /Q $(INSTALL_BIN_DIR_DBG)\$(PRG_NAME_DBG_BASE)$(EXE)
@if exist $(INSTALL_BIN_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE)$(EXE) del /F /Q $(INSTALL_BIN_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE)$(EXE)
@if exist $(INSTALL_STATIC_BIN_DIR)\$(PRG_NAME_A_BASE)$(EXE) del /F /Q $(INSTALL_STATIC_BIN_DIR)\$(PRG_NAME_A_BASE)$(EXE)
@if exist $(INSTALL_STATIC_BIN_DIR_DBG)\$(PRG_NAME_A_DBG_BASE)$(EXE) del /F /Q $(INSTALL_STATIC_BIN_DIR_DBG)\$(PRG_NAME_A_DBG_BASE)$(EXE)
@if exist $(INSTALL_STATIC_BIN_DIR_STLDBG)\$(PRG_NAME_A_STLDBG_BASE)$(EXE) del /F /Q $(INSTALL_STATIC_BIN_DIR_STLDBG)\$(PRG_NAME_A_STLDBG_BASE)$(EXE)
@if exist $(INSTALL_BIN_DIR)\$(PRG_NAME_BASE).pdb del /F /Q $(INSTALL_BIN_DIR)\$(PRG_NAME_BASE).pdb
@if exist $(INSTALL_BIN_DIR_DBG)\$(PRG_NAME_DBG_BASE).pdb del /F /Q $(INSTALL_BIN_DIR_DBG)\$(PRG_NAME_DBG_BASE).pdb
@if exist $(INSTALL_BIN_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE).pdb del /F /Q $(INSTALL_BIN_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE).pdb
@if exist $(INSTALL_STATIC_BIN_DIR)\$(PRG_NAME_A_BASE).pdb del /F /Q $(INSTALL_STATIC_BIN_DIR)\$(PRG_NAME_A_BASE).pdb
@if exist $(INSTALL_STATIC_BIN_DIR_DBG)\$(PRG_NAME_A_DBG_BASE).pdb del /F /Q $(INSTALL_STATIC_BIN_DIR_DBG)\$(PRG_NAME_A_DBG_BASE).pdb
@if exist $(INSTALL_STATIC_BIN_DIR_STLDBG)\$(PRG_NAME_A_STLDBG_BASE).pdb del /F /Q $(INSTALL_STATIC_BIN_DIR_STLDBG)\$(PRG_NAME_A_STLDBG_BASE).pdb
@if exist $(INSTALL_BIN_DIR)\$(PRG_NAME_BASE)$(EXE).manifest del /F /Q $(INSTALL_BIN_DIR)\$(PRG_NAME_BASE)$(EXE).manifest
@if exist $(INSTALL_BIN_DIR_DBG)\$(PRG_NAME_DBG_BASE)$(EXE).manifest del /F /Q $(INSTALL_BIN_DIR_DBG)\$(PRG_NAME_DBG_BASE)$(EXE).manifest
@if exist $(INSTALL_BIN_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE)$(EXE).manifest del /F /Q $(INSTALL_BIN_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE)$(EXE).manifest
@-if exist $(INSTALL_BIN_DIR) rd $(INSTALL_BIN_DIR)
@-if exist $(INSTALL_BIN_DIR_DBG) rd $(INSTALL_BIN_DIR_DBG)
@-if exist $(INSTALL_BIN_DIR_STLDBG) rd $(INSTALL_BIN_DIR_STLDBG)
@-if exist $(INSTALL_STATIC_BIN_DIR) rd $(INSTALL_STATIC_BIN_DIR)
@-if exist $(INSTALL_STATIC_BIN_DIR_DBG) rd $(INSTALL_STATIC_BIN_DIR_DBG)
@-if exist $(INSTALL_STATIC_BIN_DIR_STLDBG) rd $(INSTALL_STATIC_BIN_DIR_STLDBG)
@@ -0,0 +1,15 @@
# -*- makefile -*- Time-stamp: <04/05/01 00:46:25 ptr>
# $Id$
# missing defines in this file: LDFLAGS_COMMON
# For CE, the linker by default uses WinMain() as entry point, using this we make it use the standard main()
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /entry:"mainACRTStartup"
!ifndef LDLIBS
LDLIBS =
!endif
LDFLAGS_REL = $(LDFLAGS_REL) $(LDFLAGS_COMMON) $(LDSEARCH)
LDFLAGS_DBG = $(LDFLAGS_DBG) $(LDFLAGS_COMMON) $(LDSEARCH)
LDFLAGS_STLDBG = $(LDFLAGS_STLDBG) $(LDFLAGS_COMMON) $(LDSEARCH)
@@ -0,0 +1,7 @@
# -*- makefile -*- Time-stamp: <04/05/01 00:46:25 ptr>
# $Id$
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /base:"0x00010000"
!include evc-common.mak
@@ -0,0 +1,6 @@
# -*- makefile -*- Time-stamp: <04/03/31 08:08:12 ptr>
# $Id$
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /base:"0x00010000"
!include evc-common.mak
@@ -0,0 +1,5 @@
# build/Makefiles/nmake/app/evc8.mak
LDFLAGS_COMMON = $(LDFLAGS_COMMON)
!include evc-common.mak
@@ -0,0 +1,5 @@
# build/Makefiles/nmake/app/evc9.mak
LDFLAGS_COMMON = $(LDFLAGS_COMMON)
!include evc-common.mak
@@ -0,0 +1,2 @@
!include vc-common.mak
@@ -0,0 +1,29 @@
# -*- makefile -*- Time-stamp: <03/09/28 17:22:37 ptr>
# $Id$
DBG_SUFFIX = d
STLDBG_SUFFIX = stl$(DBG_SUFFIX)
PRG_NAME_BASE = $(PRGNAME)
PRG_NAME_DBG_BASE = $(PRGNAME)$(DBG_SUFFIX)
PRG_NAME_STLDBG_BASE = $(PRGNAME)$(STLDBG_SUFFIX)
PRG_NAME_A_BASE = $(PRGNAME)_static
PRG_NAME_A_DBG_BASE = $(PRGNAME)$(DBG_SUFFIX)_static
PRG_NAME_A_STLDBG_BASE = $(PRGNAME)$(STLDBG_SUFFIX)_static
PRG = $(OUTPUT_DIR)\$(PRG_NAME_BASE)$(EXE)
PRG_DBG = $(OUTPUT_DIR_DBG)\$(PRG_NAME_DBG_BASE)$(EXE)
PRG_STLDBG = $(OUTPUT_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE)$(EXE)
PRG_A = $(OUTPUT_DIR_A)\$(PRG_NAME_A_BASE)$(EXE)
PRG_A_DBG = $(OUTPUT_DIR_A_DBG)\$(PRG_NAME_A_DBG_BASE)$(EXE)
PRG_A_STLDBG = $(OUTPUT_DIR_A_STLDBG)\$(PRG_NAME_A_STLDBG_BASE)$(EXE)
PDB_NAME_OUT = $(OUTPUT_DIR)\$(PRG_NAME_BASE).pdb
PDB_NAME_OUT_DBG = $(OUTPUT_DIR_DBG)\$(PRG_NAME_DBG_BASE).pdb
PDB_NAME_OUT_STLDBG = $(OUTPUT_DIR_STLDBG)\$(PRG_NAME_STLDBG_BASE).pdb
MANIFEST_NAME_OUT = $(PRG).manifest
MANIFEST_NAME_OUT_DBG = $(PRG_DBG).manifest
MANIFEST_NAME_OUT_STLDBG = $(PRG_STLDBG).manifest
A_PDB_NAME_OUT = $(OUTPUT_DIR_A)\$(PRG_NAME_A_BASE).pdb
A_PDB_NAME_OUT_DBG = $(OUTPUT_DIR_A_DBG)\$(PRG_NAME_A_DBG_BASE).pdb
A_PDB_NAME_OUT_STLDBG = $(OUTPUT_DIR_A_STLDBG)\$(PRG_NAME_A_STLDBG_BASE).pdb
@@ -0,0 +1,29 @@
# -*- makefile -*- Time-stamp: <03/10/26 23:11:03 ptr>
# $Id$
release-shared: $(OUTPUT_DIR) $(PRG)
release-static: $(OUTPUT_DIR_A) $(PRG_A)
dbg-shared: $(OUTPUT_DIR_DBG) $(PRG_DBG)
dbg-static: $(OUTPUT_DIR_A_DBG) $(PRG_A_DBG)
stldbg-shared: $(OUTPUT_DIR_STLDBG) $(PRG_STLDBG)
stldbg-static: $(OUTPUT_DIR_A_STLDBG) $(PRG_A_STLDBG)
$(PRG): $(OBJ) $(LIBSDEP)
$(LINK_cc_REL) $(LINK_OUTPUT_OPTION) $(OBJ) $(LDLIBS_REL) $(LDLIBS)
$(PRG_A): $(OBJ_A) $(LIBSDEP)
$(LINK_cc_A_REL) $(LINK_OUTPUT_OPTION) $(OBJ_A) $(LDLIBS_A_REL) $(LDLIBS)
$(PRG_DBG): $(OBJ_DBG) $(LIBSDEP)
$(LINK_cc_DBG) $(LINK_OUTPUT_OPTION) $(OBJ_DBG) $(LDLIBS_DBG) $(LDLIBS)
$(PRG_A_DBG): $(OBJ_A_DBG) $(LIBSDEP)
$(LINK_cc_A_DBG) $(LINK_OUTPUT_OPTION) $(OBJ_A_DBG) $(LDLIBS_A_DBG) $(LDLIBS)
$(PRG_STLDBG): $(OBJ_STLDBG) $(LIBSDEP)
$(LINK_cc_STLDBG) $(LINK_OUTPUT_OPTION) $(OBJ_STLDBG) $(LDLIBS_STLDBG) $(LDLIBS)
$(PRG_A_STLDBG): $(OBJ_A_STLDBG) $(LIBSDEP)
$(LINK_cc_A_STLDBG) $(LINK_OUTPUT_OPTION) $(OBJ_A_STLDBG) $(LDLIBS_A_STLDBG) $(LDLIBS)
@@ -0,0 +1,16 @@
# Time-stamp: <03/10/17 19:29:26 ptr>
# $Id$
install-static: install-release-static install-dbg-static install-stldbg-static
install-release-static: release-static $(INSTALL_STATIC_BIN_DIR)
$(INSTALL_A) $(PRG_A) $(INSTALL_STATIC_BIN_DIR)
@if exist $(A_PDB_NAME_OUT) $(INSTALL_A) $(A_PDB_NAME_OUT) $(INSTALL_STATIC_BIN_DIR)
install-dbg-static: dbg-static $(INSTALL_STATIC_BIN_DIR_DBG)
$(INSTALL_A) $(PRG_A_DBG) $(INSTALL_STATIC_BIN_DIR_DBG)
@if exist $(A_PDB_NAME_OUT_DBG) $(INSTALL_A) $(A_PDB_NAME_OUT_DBG) $(INSTALL_STATIC_BIN_DIR_DBG)
install-stldbg-static: stldbg-static $(INSTALL_STATIC_BIN_DIR_STLDBG)
$(INSTALL_A) $(PRG_A_STLDBG) $(INSTALL_STATIC_BIN_DIR_STLDBG)
@if exist $(A_PDB_NAME_OUT_STLDBG) $(INSTALL_A) $(A_PDB_NAME_OUT_STLDBG) $(INSTALL_STATIC_BIN_DIR_STLDBG)
@@ -0,0 +1,23 @@
# Time-stamp: <03/10/26 16:42:14 ptr>
# $Id$
!ifndef INSTALL_TAGS
INSTALL_TAGS= install-shared install-static
!endif
install: $(INSTALL_TAGS)
install-release-shared: release-shared $(INSTALL_BIN_DIR)
$(INSTALL_SO) $(PRG) $(INSTALL_BIN_DIR)
$(INSTALL_SO) $(PDB_NAME_OUT) $(INSTALL_BIN_DIR)
@if exist $(MANIFEST_NAME_OUT) $(INSTALL_SO) $(MANIFEST_NAME_OUT) $(INSTALL_BIN_DIR)
install-dbg-shared: dbg-shared $(INSTALL_BIN_DIR_DBG)
$(INSTALL_SO) $(PRG_DBG) $(INSTALL_BIN_DIR_DBG)
$(INSTALL_SO) $(PDB_NAME_OUT_DBG) $(INSTALL_BIN_DIR_DBG)
@if exist $(MANIFEST_NAME_OUT_DBG) $(INSTALL_SO) $(MANIFEST_NAME_OUT_DBG) $(INSTALL_BIN_DIR_DBG)
install-stldbg-shared: stldbg-shared $(INSTALL_BIN_DIR_STLDBG)
$(INSTALL_SO) $(PRG_STLDBG) $(INSTALL_BIN_DIR_STLDBG)
$(INSTALL_SO) $(PDB_NAME_OUT_STLDBG) $(INSTALL_BIN_DIR_STLDBG)
@if exist $(MANIFEST_NAME_OUT_STLDBG) $(INSTALL_SO) $(MANIFEST_NAME_OUT_STLDBG) $(INSTALL_BIN_DIR_STLDBG)
@@ -0,0 +1,15 @@
# -*- makefile -*- Time-stamp: <03/09/28 18:46:10 ptr>
# $Id$
!ifndef LDFLAGS
LDFLAGS =
!endif
!include $(RULESBASE)/$(USE_MAKE)/app/macro.mak
!include $(RULESBASE)/$(USE_MAKE)/app/$(COMPILER_NAME).mak
!include $(RULESBASE)/$(USE_MAKE)/app/rules-exe-$(OSNAME).mak
!include $(RULESBASE)/$(USE_MAKE)/app/rules-install-so.mak
!include $(RULESBASE)/$(USE_MAKE)/app/rules-install-a.mak
!include $(RULESBASE)/$(USE_MAKE)/app/clean.mak
@@ -0,0 +1,13 @@
# -*- makefile -*- Time-stamp: <03/09/28 17:34:35 ptr>
# $Id$
!ifndef LDLIBS
LDLIBS =
!endif
#LDSEARCH = $(LDSEARCH) /LIBPATH:"$(MSVC_LIB_DIR)"
LDFLAGS_REL = $(LDFLAGS_REL) $(LDSEARCH)
LDFLAGS_A_REL = $(LDFLAGS_A_REL) $(LDSEARCH)
LDFLAGS_DBG = $(LDFLAGS_DBG) $(LDSEARCH)
LDFLAGS_STLDBG = $(LDFLAGS_STLDBG) $(LDSEARCH)
@@ -0,0 +1,4 @@
OPT_STLDBG = $(OPT_STLDBG) /Zm800
OPT_STATIC_STLDBG = $(OPT_STATIC_STLDBG) /Zm800
!include vc-common.mak
@@ -0,0 +1,2 @@
!include vc-common.mak
@@ -0,0 +1,3 @@
!include vc-common.mak
@@ -0,0 +1,3 @@
!include vc-common.mak
@@ -0,0 +1,3 @@
!include vc-common.mak
@@ -0,0 +1,16 @@
# -*- makefile -*- Time-stamp: <03/10/29 22:20:01 ptr>
# $Id$
clean:
@if exist $(OUTPUT_DIR)\*.o del /F /Q $(OUTPUT_DIR)\*.o
@if exist $(OUTPUT_DIR_DBG)\*.o del /F /Q $(OUTPUT_DIR_DBG)\*.o
@if exist $(OUTPUT_DIR_STLDBG)\*.o del /F /Q $(OUTPUT_DIR_STLDBG)\*.o
@if exist $(OUTPUT_DIR_A)\*.o del /F /Q $(OUTPUT_DIR_A)\*.o
@if exist $(OUTPUT_DIR_A_DBG)\*.o del /F /Q $(OUTPUT_DIR_A_DBG)\*.o
@if exist $(OUTPUT_DIR_A_STLDBG)\*.o del /F /Q $(OUTPUT_DIR_A_STLDBG)\*.o
@if exist $(OUTPUT_DIR)\*.obj del /F /Q $(OUTPUT_DIR)\*.obj
@if exist $(OUTPUT_DIR_DBG)\*.obj del /F /Q $(OUTPUT_DIR_DBG)\*.obj
@if exist $(OUTPUT_DIR_STLDBG)\*.obj del /F /Q $(OUTPUT_DIR_STLDBG)\*.obj
@if exist $(OUTPUT_DIR_A)\*.obj del /F /Q $(OUTPUT_DIR_A)\*.obj
@if exist $(OUTPUT_DIR_A_DBG)\*.obj del /F /Q $(OUTPUT_DIR_A_DBG)\*.obj
@if exist $(OUTPUT_DIR_A_STLDBG)\*.obj del /F /Q $(OUTPUT_DIR_A_STLDBG)\*.obj
@@ -0,0 +1,92 @@
# Time-stamp: <04/04/30 23:36:48 ptr>
# $Id$
# stuff not defined here: CXX, CC, DEFS_COMMON, CFLAGS_*, CXXFLAGS_*, OPT_COMMON
LINK = link.exe
RC = rc.exe
!ifdef DEFS
DEFS_REL = $(DEFS) $(DEFS_REL)
DEFS_DBG = $(DEFS) $(DEFS_DBG)
DEFS_STLDBG = $(DEFS) $(DEFS_STLDBG)
DEFS_STATIC_REL = $(DEFS) $(DEFS_STATIC_REL)
DEFS_STATIC_DBG = $(DEFS) $(DEFS_STATIC_DBG)
DEFS_STATIC_STLDBG = $(DEFS) $(DEFS_STATIC_STLDBG)
!endif
!ifdef OPT
OPT_REL = $(OPT) $(OPT_REL)
OPT_DBG = $(OPT) $(OPT_DBG)
OPT_STLDBG = $(OPT) $(OPT_STLDBG)
OPT_STATIC_REL = $(OPT) $(OPT_STATIC_REL)
OPT_STATIC_DBG = $(OPT) $(OPT_STATIC_DBG)
OPT_STATIC_STLDBG = $(OPT) $(OPT_STATIC_STLDBG)
!endif
OUTPUT_OPTION = /Fo$@ /Fd"$(PDB_NAME_OUT)"
OUTPUT_OPTION_DBG = /Fo$@ /Fd"$(PDB_NAME_OUT_DBG)"
OUTPUT_OPTION_STLDBG = /Fo$@ /Fd"$(PDB_NAME_OUT_STLDBG)"
OUTPUT_OPTION_STATIC = /Fo$@ /Fd"$(A_PDB_NAME_OUT)"
OUTPUT_OPTION_STATIC_DBG = /Fo$@ /Fd"$(A_PDB_NAME_OUT_DBG)"
OUTPUT_OPTION_STATIC_STLDBG = /Fo$@ /Fd"$(A_PDB_NAME_OUT_STLDBG)"
LINK_OUTPUT_OPTION = /OUT:$@
RC_OUTPUT_OPTION = /fo $@
RC_OUTPUT_OPTION_DBG = /fo $@
RC_OUTPUT_OPTION_STLDBG = /fo $@
DEFS_REL = $(DEFS_REL) $(DEFS_COMMON)
DEFS_STATIC_REL = $(DEFS_STATIC_REL) $(DEFS_COMMON)
DEFS_DBG = $(DEFS_DBG) $(DEFS_COMMON)
DEFS_STATIC_DBG = $(DEFS_STATIC_DBG) $(DEFS_COMMON)
DEFS_STLDBG = $(DEFS_STLDBG) $(DEFS_COMMON)
DEFS_STATIC_STLDBG = $(DEFS_STATIC_STLDBG) $(DEFS_COMMON)
CPPFLAGS_REL = $(DEFS_REL) $(INCLUDES)
CPPFLAGS_STATIC_REL = $(DEFS_STATIC_REL) $(INCLUDES)
CPPFLAGS_DBG = $(DEFS_DBG) $(INCLUDES)
CPPFLAGS_STATIC_DBG = $(DEFS_STATIC_DBG) $(INCLUDES)
CPPFLAGS_STLDBG = $(DEFS_STLDBG) $(INCLUDES)
CPPFLAGS_STATIC_STLDBG = $(DEFS_STATIC_STLDBG) $(INCLUDES)
COMPILE_c_REL = $(CC) $(CFLAGS_REL) $(CPPFLAGS_REL) $(TARGET_ARCH) /c
COMPILE_c_STATIC_REL = $(CC) $(CFLAGS_STATIC_REL) $(CPPFLAGS_STATIC_REL) $(TARGET_ARCH) /c
COMPILE_c_DBG = $(CC) $(CFLAGS_DBG) $(CPPFLAGS_DBG) $(TARGET_ARCH) /c
COMPILE_c_STATIC_DBG = $(CC) $(CFLAGS_STATIC_DBG) $(CPPFLAGS_STATIC_DBG) $(TARGET_ARCH) /c
COMPILE_c_STLDBG = $(CC) $(CFLAGS_STLDBG) $(CPPFLAGS_STLDBG) $(TARGET_ARCH) /c
COMPILE_c_STATIC_STLDBG = $(CC) $(CFLAGS_STATIC_STLDBG) $(CPPFLAGS_STATIC_STLDBG) $(TARGET_ARCH) /c
COMPILE_cc_REL = $(CXX) $(CXXFLAGS_REL) $(CPPFLAGS_REL) $(TARGET_ARCH) /c
COMPILE_cc_STATIC_REL = $(CXX) $(CXXFLAGS_STATIC_REL) $(CPPFLAGS_STATIC_REL) $(TARGET_ARCH) /c
COMPILE_cc_DBG = $(CXX) $(CXXFLAGS_DBG) $(CPPFLAGS_DBG) $(TARGET_ARCH) /c
COMPILE_cc_STATIC_DBG = $(CXX) $(CXXFLAGS_STATIC_DBG) $(CPPFLAGS_STATIC_DBG) $(TARGET_ARCH) /c
COMPILE_cc_STLDBG = $(CXX) $(CXXFLAGS_STLDBG) $(CPPFLAGS_STLDBG) $(TARGET_ARCH) /c
COMPILE_cc_STATIC_STLDBG = $(CXX) $(CXXFLAGS_STATIC_STLDBG) $(CPPFLAGS_STATIC_STLDBG) $(TARGET_ARCH) /c
COMPILE_rc_REL = $(RC) $(RC_FLAGS_REL) /D "BUILD_INFOS=$(CPPFLAGS_REL)"
COMPILE_rc_STATIC_REL = $(RC) $(RC_FLAGS_REL) /D "BUILD_INFOS=$(CPPFLAGS_STATIC_REL)"
COMPILE_rc_DBG = $(RC) $(RC_FLAGS_DBG) /DBUILD=d /D "BUILD_INFOS=$(CPPFLAGS_DBG)"
COMPILE_rc_STATIC_DBG = $(RC) $(RC_FLAGS_DBG) /DBUILD=d /D "BUILD_INFOS=$(CPPFLAGS_STATIC_DBG)"
COMPILE_rc_STLDBG = $(RC) $(RC_FLAGS_STLDBG) /DBUILD=stld /D "BUILD_INFOS=$(CPPFLAGS_STLDBG) /D_STLP_DEBUG"
COMPILE_rc_STATIC_STLDBG = $(RC) $(RC_FLAGS_STLDBG) /DBUILD=stld /D "BUILD_INFOS=$(CPPFLAGS_STATIC_STLDBG) /D_STLP_DEBUG"
LINK_cc_REL = $(LINK) /nologo /incremental:no /debug /pdb:"$(PDB_NAME_OUT)" $(LDFLAGS_REL)
LINK_cc_DBG = $(LINK) /nologo /incremental:no /debug /pdb:"$(PDB_NAME_OUT_DBG)" $(LDFLAGS_DBG)
LINK_cc_STLDBG = $(LINK) /nologo /incremental:no /debug /pdb:"$(PDB_NAME_OUT_STLDBG)" $(LDFLAGS_STLDBG)
LINK_cc_A_REL = $(LINK) /nologo /incremental:no /debug /pdb:"$(A_PDB_NAME_OUT)" $(LDFLAGS_REL)
LINK_cc_A_DBG = $(LINK) /nologo /incremental:no /debug /pdb:"$(A_PDB_NAME_OUT_DBG)" $(LDFLAGS_DBG)
LINK_cc_A_STLDBG = $(LINK) /nologo /incremental:no /debug /pdb:"$(A_PDB_NAME_OUT_STLDBG)" $(LDFLAGS_STLDBG)
CDEPFLAGS = /FD /E
CCDEPFLAGS = /FD /E
# STLport DEBUG mode specific defines
DEFS_STLDBG = $(DEFS_STLDBG) /D_DEBUG /D_STLP_DEBUG /DDEBUG
DEFS_DBG = $(DEFS_DBG) /D_DEBUG /DDEBUG
DEFS_REL = $(DEFS_REL) /DNDEBUG
DEFS_STATIC_STLDBG = $(DEFS_STATIC_STLDBG) /D_DEBUG /D_STLP_DEBUG /DDEBUG /D_STLP_NO_FORCE_INSTANTIATE
DEFS_STATIC_DBG = $(DEFS_STATIC_DBG) /D_DEBUG /DDEBUG /D_STLP_NO_FORCE_INSTANTIATE
DEFS_STATIC_REL = $(DEFS_STATIC_REL) /DNDEBUG /D_STLP_NO_FORCE_INSTANTIATE
# optimization and debug compiler flags
OPT_REL = $(OPT_REL) /Zi /O2 $(OPT_COMMON)
OPT_DBG = $(OPT_DBG) /Zi /Od $(OPT_COMMON)
OPT_STLDBG = $(OPT_STLDBG) /Zi /Od $(OPT_COMMON)
OPT_STATIC_REL = $(OPT_STATIC_REL) /Zi /O2 $(OPT_COMMON)
OPT_STATIC_DBG = $(OPT_STATIC_DBG) /Zi /Od $(OPT_COMMON)
OPT_STATIC_STLDBG = $(OPT_STATIC_STLDBG) /Zi /Od $(OPT_COMMON)
@@ -0,0 +1,83 @@
# Time-stamp: <04/04/30 23:36:48 ptr>
# $Id$
!if "$(TARGET_PROC)" == ""
!error No target processor configured! Please rerun configure.bat!
!endif
!if "$(CC)" == ""
!error CC not set, run the proper WCE*.bat from this shell to set it!
!endif
# All the batchfiles to setup the environment yield different
# compilers which they put into CC.
CXX = $(CC)
DEFS_COMMON = $(DEFS_COMMON) /D _WIN32_WCE=$(CEVERSION) /D UNDER_CE=$(CEVERSION) /D "UNICODE"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) coredll.lib corelibc.lib /nodefaultlib:LIBC.lib /nodefaultlib:"oldnames.lib"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /stack:0x10000,0x1000 /subsystem:WINDOWSCE /align:"4096"
# increase compiler memory in order to compile deeply nested template code
OPT_STLDBG = $(OPT_STLDBG) /Zm800
OPT_STATIC_STLDBG = $(OPT_STATIC_STLDBG) /Zm800
# activate global (whole program) optimizations
OPT_REL = $(OPT_REL) /Og
OPT_STATIC_REL = $(OPT_STATIC_REL) /Og
# ARM specific settings
!if "$(TARGET_PROC)" == "arm"
DEFS_COMMON = $(DEFS_COMMON) /D "ARM" /D "_ARM_"
OPT_COMMON = $(OPT_COMMON)
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:ARM
!endif
# x86 specific settings
!if "$(TARGET_PROC)" == "x86"
DEFS_COMMON = $(DEFS_COMMON) /D "x86" /D "_X86_"
OPT_COMMON = $(OPT_COMMON)
!if "$(TARGET_PROC_SUBTYPE)" == "emulator"
DEFS_COMMON = $(DEFS_COMMON) /D "_STLP_WCE_TARGET_PROC_SUBTYPE_EMULATOR"
!endif
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:X86 $(CEx86Corelibc)
!endif
# MIPS specific settings
!if "$(TARGET_PROC)" == "mips"
DEFS_COMMON = $(DEFS_COMMON) /D "_MIPS_" /D "MIPS" /D "$(TARGET_PROC_SUBTYPE)"
OPT_COMMON = $(OPT_COMMON)
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:MIPS
!endif
# SH3 specific settings
!if "$(TARGET_PROC)" == "sh3"
DEFS_COMMON = $(DEFS_COMMON) /D "SH3" /D "_SH3_" /D "SHx"
OPT_COMMON = $(OPT_COMMON)
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:SH3
!endif
# SH4 specific settings
!if "$(TARGET_PROC)" == "sh4"
DEFS_COMMON = $(DEFS_COMMON) /D "SH4" /D "_SH4_" /D "SHx"
OPT_COMMON = $(OPT_COMMON) /Qsh4
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:SH4
!endif
# without exceptions
CFLAGS_COMMON = /nologo /TC /W4 /GF
CFLAGS_REL = $(CFLAGS_COMMON) $(OPT_REL)
CFLAGS_STATIC_REL = $(CFLAGS_COMMON) $(OPT_STATIC_REL)
CFLAGS_DBG = $(CFLAGS_COMMON) $(OPT_DBG)
CFLAGS_STATIC_DBG = $(CFLAGS_COMMON) $(OPT_STATIC_DBG)
CFLAGS_STLDBG = $(CFLAGS_COMMON) $(OPT_STLDBG)
CFLAGS_STATIC_STLDBG = $(CFLAGS_COMMON) $(OPT_STATIC_STLDBG)
CXXFLAGS_COMMON = /nologo /TP /W4 /GF
CXXFLAGS_REL = $(CXXFLAGS_COMMON) $(OPT_REL)
CXXFLAGS_STATIC_REL = $(CXXFLAGS_COMMON) $(OPT_STATIC_REL)
CXXFLAGS_DBG = $(CXXFLAGS_COMMON) $(OPT_DBG)
CXXFLAGS_STATIC_DBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_DBG)
CXXFLAGS_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STLDBG)
CXXFLAGS_STATIC_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_STLDBG)
!include evc-common.mak
@@ -0,0 +1,116 @@
# Time-stamp: <04/03/31 07:55:19 ptr>
# $Id$
!if "$(TARGET_PROC)" == ""
!error No target processor configured! Please rerun configure.bat!
!endif
!if "$(CC)" == ""
!error CC not set, run the proper WCE*.bat from this shell to set it!
!endif
# All the batchfiles to setup the environment yield different
# compilers which they put into CC.
CXX = $(CC)
DEFS_COMMON = $(DEFS_COMMON) /D _WIN32_WCE=$(CEVERSION) /D UNDER_CE=$(CEVERSION) /D "UNICODE"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) coredll.lib corelibc.lib /nodefaultlib:LIBC.lib /nodefaultlib:OLDNAMES.lib
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /stack:0x10000,0x1000 /subsystem:WINDOWSCE /align:"4096"
# increase compiler memory in order to compile deeply nested template code
OPT_STLDBG = $(OPT_STLDBG) /Zm800
OPT_STATIC_STLDBG = $(OPT_STATIC_STLDBG) /Zm800
# activate global (whole program) optimizations
OPT_REL = $(OPT_REL) /Og
OPT_STATIC_REL = $(OPT_STATIC_REL) /Og
# ARM specific settings
!if "$(TARGET_PROC)" == "arm"
DEFS_COMMON = $(DEFS_COMMON) /D "ARM" /D "_ARM_" /D "ARMV4"
OPT_STATIC_STLDBG = $(OPT_STATIC_STLDBG) /Zm800
OPT_COMMON = $(OPT_COMMON)
# TODO: eVC4 IDE uses ARM for ARMV4 and THUMB for ARMV4I and ARMV4T
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:ARM
# RTTI patch for PPC2003 SDK
!if "$(PLATFORM)" == "POCKET PC 2003"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) ccrtrtti.lib
!endif
!endif
# x86 specific settings
!if "$(TARGET_PROC)" == "x86"
DEFS_COMMON = $(DEFS_COMMON) /D "x86" /D "_X86_" /D "_i386_"
OPT_COMMON = $(OPT_COMMON) /Gs8192
LDFLAGS_COMMON = $(LDFLAGS_COMMON) $(CEx86Corelibc) /MACHINE:X86
!if "$(TARGET_PROC_SUBTYPE)" == "emulator"
DEFS_COMMON = $(DEFS_COMMON) /D "_STLP_WCE_TARGET_PROC_SUBTYPE_EMULATOR"
!endif
!if "$(PLATFORM)" == "POCKET PC 2003"
# RTTI patch for PPC2003 SDK
LDFLAGS_COMMON = $(LDFLAGS_COMMON) ccrtrtti.lib
!endif
!endif
# MIPS specific settings
!if "$(TARGET_PROC)" == "mips"
DEFS_COMMON = $(DEFS_COMMON) /D "_MIPS_" /D "MIPS" /D "$(TARGET_PROC_SUBTYPE)"
OPT_COMMON = $(OPT_COMMON)
# Note: one might think that MIPSII_FP and MIPSIV_FP should use /MACHINE:MIPSFPU
# while MIPSII and MIPSIV should use /MACHINE:MIPS, but this is exactly how the
# eVC4 IDE does it.
!if "$(TARGET_PROC_SUBTYPE)" == ""
!error "MIPS subtype not set"
!elseif "$(TARGET_PROC_SUBTYPE)" == "MIPS16"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:MIPS
!elseif "$(TARGET_PROC_SUBTYPE)" == "MIPSII"
OPT_COMMON = $(OPT_COMMON) /QMmips2 /QMFPE
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:MIPS
!elseif "$(TARGET_PROC_SUBTYPE)" == "MIPSII_FP"
OPT_COMMON = $(OPT_COMMON) /QMmips2 /QMFPE-
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:MIPS
!elseif "$(TARGET_PROC_SUBTYPE)" == "MIPSIV"
OPT_COMMON = $(OPT_COMMON) /QMmips4 /QMn32 /QMFPE
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:MIPSFPU
!elseif "$(TARGET_PROC_SUBTYPE)" == "MIPSIV_FP"
OPT_COMMON = $(OPT_COMMON) /QMmips4 /QMn32 /QMFPE-
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:MIPSFPU
!else
!error "unknown MIPS subtype"
!endif
!endif
# SH3 specific settings
!if "$(TARGET_PROC)" == "sh3"
DEFS_COMMON = $(DEFS_COMMON) /D "SH3" /D "_SH3_" /D "SHx"
OPT_COMMON = $(OPT_COMMON)
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:SH3
!endif
# SH4 specific settings
!if "$(TARGET_PROC)" == "sh4"
DEFS_COMMON = $(DEFS_COMMON) /D "SH4" /D "_SH4_" /D "SHx"
OPT_COMMON = $(OPT_COMMON) /Qsh4
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /MACHINE:SH4
!endif
# exception handling support
CFLAGS_COMMON = /nologo /TC /W4 /GF /GR /GX
CFLAGS_REL = $(CFLAGS_COMMON) $(OPT_REL)
CFLAGS_STATIC_REL = $(CFLAGS_COMMON) $(OPT_STATIC_REL)
CFLAGS_DBG = $(CFLAGS_COMMON) $(OPT_DBG)
CFLAGS_STATIC_DBG = $(CFLAGS_COMMON) $(OPT_STATIC_DBG)
CFLAGS_STLDBG = $(CFLAGS_COMMON) $(OPT_STLDBG)
CFLAGS_STATIC_STLDBG = $(CFLAGS_COMMON) $(OPT_STATIC_STLDBG)
CXXFLAGS_COMMON = /nologo /TP /W4 /GF /GR /GX
CXXFLAGS_REL = $(CXXFLAGS_COMMON) $(OPT_REL)
CXXFLAGS_STATIC_REL = $(CXXFLAGS_COMMON) $(OPT_STATIC_REL)
CXXFLAGS_DBG = $(CXXFLAGS_COMMON) $(OPT_DBG)
CXXFLAGS_STATIC_DBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_DBG)
CXXFLAGS_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STLDBG)
CXXFLAGS_STATIC_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_STLDBG)
!include evc-common.mak
@@ -0,0 +1,102 @@
# build/Makefiles/nmake/evc8.mak
# Note: _WIN32_WCE is defined as 420 for CE 4.2 but as 0x500 for CE 5.0!
DEFS_COMMON = $(DEFS_COMMON) /D _WIN32_WCE=0x$(CEVERSION) /D UNDER_CE=1 /D "UNICODE"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) coredll.lib corelibc.lib /nodefaultlib:LIBC.lib /nodefaultlib:OLDNAMES.lib
!if "$(PLATFORM)" == "POCKET PC 2003"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /subsystem:windowsce,4.20
!else
# TODO: the subsystem settings will have to be adjusted for CE5.01...
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /subsystem:windowsce,5.00
!endif
!if "$(TARGET_PROC)" == ""
!error No target processor configured! Please rerun configure.bat!
!endif
!if "$(CC)" == ""
CC=cl.exe
!endif
CXX = $(CC)
# activate global optimisations (aka Link Time Code Generation)
OPT_REL = $(OPT_REL) /GL
LDFLAGS_REL = $(LDFLAGS_REL) /LTCG
# make the compiler display absolute paths in diagnostics
# While this is not necessary for STLport in any way, it is convenient when using
# the VC8 IDE for building things because then you can click on diagnostics in
# order to warp to the exact place in the code.
OPT_COMMON = $(OPT_COMMON) /FC
# ARM specific settings
!if "$(TARGET_PROC)" == "arm"
DEFS_COMMON = $(DEFS_COMMON) /D "ARM" /D "_ARM_" /D "$(TARGET_PROC_SUBTYPE)"
OPT_COMMON = $(OPT_COMMON)
!if "$(PLATFORM)" == "POCKET PC 2003"
DEFS_COMMON = $(DEFS_COMMON) /DWIN32_PLATFORM_PSPC
# Pocket PC 2003 doesn't support THUMB.
LDFLAGS_COMMON = $(LDFLAGS_COMMON) ccrtrtti.lib secchk.lib /machine:ARM
!endif
!endif
# x86 specific settings
!if "$(TARGET_PROC)" == "x86"
DEFS_COMMON = $(DEFS_COMMON) /D "x86" /D "_X86_"
OPT_COMMON = $(OPT_COMMON)
!endif
# MIPS specific settings
!if "$(TARGET_PROC)" == "mips"
DEFS_COMMON = $(DEFS_COMMON) /D "MIPS" /D "_MIPS_" /D "$(TARGET_PROC_SUBTYPE)"
!if "$(TARGET_PROC_SUBTYPE)" == ""
!error "MIPS subtype not set"
!elseif "$(TARGET_PROC_SUBTYPE)" == "MIPSII"
OPT_COMMON = $(OPT_COMMON) /QMmips2
!else
!error "unknown MIPS subtype"
!endif
!endif
# SH4 specific settings
!if "$(TARGET_PROC)" == "sh4"
DEFS_COMMON = $(DEFS_COMMON) /D "SHx" /D "_SHX_" /D "SH4"
OPT_COMMON = $(OPT_COMMON)
!endif
# Note: /GX for MSC<14 has been replaced with /EHsc
CFLAGS_COMMON = /nologo /TC /W4 /GF /GR /EHsc
CFLAGS_REL = $(CFLAGS_COMMON) $(OPT_REL)
CFLAGS_STATIC_REL = $(CFLAGS_COMMON) $(OPT_STATIC_REL)
CFLAGS_DBG = $(CFLAGS_COMMON) $(OPT_DBG)
CFLAGS_STATIC_DBG = $(CFLAGS_COMMON) $(OPT_STATIC_DBG)
CFLAGS_STLDBG = $(CFLAGS_COMMON) $(OPT_STLDBG)
CFLAGS_STATIC_STLDBG = $(CFLAGS_COMMON) $(OPT_STATIC_STLDBG)
CXXFLAGS_COMMON = /nologo /TP /W4 /GF /GR /EHsc
CXXFLAGS_REL = $(CXXFLAGS_COMMON) $(OPT_REL)
CXXFLAGS_STATIC_REL = $(CXXFLAGS_COMMON) $(OPT_STATIC_REL)
CXXFLAGS_DBG = $(CXXFLAGS_COMMON) $(OPT_DBG)
CXXFLAGS_STATIC_DBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_DBG)
CXXFLAGS_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STLDBG)
CXXFLAGS_STATIC_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_STLDBG)
# setup proper runtime (static/dynamic, debug/release)
!ifdef WITH_STATIC_RTL
OPT_DBG = $(OPT_DBG) /MTd
OPT_STLDBG = $(OPT_STLDBG) /MTd
OPT_REL = $(OPT_REL) /MT
DEFS_REL = $(DEFS_REL) /D_STLP_USE_DYNAMIC_LIB
DEFS_DBG = $(DEFS_DBG) /D_STLP_USE_DYNAMIC_LIB
DEFS_STLDBG = $(DEFS_STLDBG) /D_STLP_USE_DYNAMIC_LIB
!else
OPT_DBG = $(OPT_DBG) /MDd
OPT_STLDBG = $(OPT_STLDBG) /MDd
OPT_REL = $(OPT_REL) /MD
!endif
!include evc-common.mak
@@ -0,0 +1,102 @@
# build/Makefiles/nmake/evc9.mak
# Note: _WIN32_WCE is defined as 420 for CE 4.2 but as 0x500 for CE 5.0!
DEFS_COMMON = $(DEFS_COMMON) /D _WIN32_WCE=0x$(CEVERSION) /D UNDER_CE=1 /D "UNICODE"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) coredll.lib corelibc.lib /nodefaultlib:LIBC.lib /nodefaultlib:OLDNAMES.lib
!if "$(PLATFORM)" == "POCKET PC 2003"
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /subsystem:windowsce,4.20
!else
# TODO: the subsystem settings will have to be adjusted for CE5.01...
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /subsystem:windowsce,5.00
!endif
!if "$(TARGET_PROC)" == ""
!error No target processor configured! Please rerun configure.bat!
!endif
!if "$(CC)" == ""
CC=cl.exe
!endif
CXX = $(CC)
# activate global optimisations (aka Link Time Code Generation)
OPT_REL = $(OPT_REL) /GL
LDFLAGS_REL = $(LDFLAGS_REL) /LTCG
# make the compiler display absolute paths in diagnostics
# While this is not necessary for STLport in any way, it is convenient when using
# the VC8 IDE for building things because then you can click on diagnostics in
# order to warp to the exact place in the code.
OPT_COMMON = $(OPT_COMMON) /FC
# ARM specific settings
!if "$(TARGET_PROC)" == "arm"
DEFS_COMMON = $(DEFS_COMMON) /D "ARM" /D "_ARM_" /D "$(TARGET_PROC_SUBTYPE)"
OPT_COMMON = $(OPT_COMMON)
!if "$(PLATFORM)" == "POCKET PC 2003"
DEFS_COMMON = $(DEFS_COMMON) /DWIN32_PLATFORM_PSPC
# Pocket PC 2003 doesn't support THUMB.
LDFLAGS_COMMON = $(LDFLAGS_COMMON) ccrtrtti.lib secchk.lib /machine:ARM
!endif
!endif
# x86 specific settings
!if "$(TARGET_PROC)" == "x86"
DEFS_COMMON = $(DEFS_COMMON) /D "x86" /D "_X86_"
OPT_COMMON = $(OPT_COMMON)
!endif
# MIPS specific settings
!if "$(TARGET_PROC)" == "mips"
DEFS_COMMON = $(DEFS_COMMON) /D "MIPS" /D "_MIPS_" /D "$(TARGET_PROC_SUBTYPE)"
!if "$(TARGET_PROC_SUBTYPE)" == ""
!error "MIPS subtype not set"
!elseif "$(TARGET_PROC_SUBTYPE)" == "MIPSII"
OPT_COMMON = $(OPT_COMMON) /QMmips2
!else
!error "unknown MIPS subtype"
!endif
!endif
# SH4 specific settings
!if "$(TARGET_PROC)" == "sh4"
DEFS_COMMON = $(DEFS_COMMON) /D "SHx" /D "_SHX_" /D "SH4"
OPT_COMMON = $(OPT_COMMON)
!endif
# Note: /GX for MSC<14 has been replaced with /EHsc
CFLAGS_COMMON = /nologo /TC /WX /GF /GR /EHsc
CFLAGS_REL = $(CFLAGS_COMMON) $(OPT_REL)
CFLAGS_STATIC_REL = $(CFLAGS_COMMON) $(OPT_STATIC_REL)
CFLAGS_DBG = $(CFLAGS_COMMON) $(OPT_DBG)
CFLAGS_STATIC_DBG = $(CFLAGS_COMMON) $(OPT_STATIC_DBG)
CFLAGS_STLDBG = $(CFLAGS_COMMON) $(OPT_STLDBG)
CFLAGS_STATIC_STLDBG = $(CFLAGS_COMMON) $(OPT_STATIC_STLDBG)
CXXFLAGS_COMMON = /nologo /TP /WX /GF /GR /EHsc
CXXFLAGS_REL = $(CXXFLAGS_COMMON) $(OPT_REL)
CXXFLAGS_STATIC_REL = $(CXXFLAGS_COMMON) $(OPT_STATIC_REL)
CXXFLAGS_DBG = $(CXXFLAGS_COMMON) $(OPT_DBG)
CXXFLAGS_STATIC_DBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_DBG)
CXXFLAGS_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STLDBG)
CXXFLAGS_STATIC_STLDBG = $(CXXFLAGS_COMMON) $(OPT_STATIC_STLDBG)
# setup proper runtime (static/dynamic, debug/release)
!ifdef WITH_STATIC_RTL
OPT_DBG = $(OPT_DBG) /MTd
OPT_STLDBG = $(OPT_STLDBG) /MTd
OPT_REL = $(OPT_REL) /MT
DEFS_REL = $(DEFS_REL) /D_STLP_USE_DYNAMIC_LIB
DEFS_DBG = $(DEFS_DBG) /D_STLP_USE_DYNAMIC_LIB
DEFS_STLDBG = $(DEFS_STLDBG) /D_STLP_USE_DYNAMIC_LIB
!else
OPT_DBG = $(OPT_DBG) /MDd
OPT_STLDBG = $(OPT_STLDBG) /MDd
OPT_REL = $(OPT_REL) /MD
!endif
!include evc-common.mak
@@ -0,0 +1,91 @@
# Time-stamp: <03/09/28 13:44:57 ptr>
# $Id$
#!ifndef MSVC_LIB_DIR
#MSVC_LIB_DIR = $(MSVC_DIR)\Lib
#!endif
!ifndef SOAP_DIR
SOAP_DIR = /opt/gSOAP-2.2.3
!endif
!ifndef BOOST_DIR
BOOST_DIR = $(SRCROOT)/../extern/boost
!endif
!ifndef STLPORT_DIR
STLPORT_DIR = ../../stlport
!endif
!ifndef CoMT_DIR
CoMT_DIR = $(SRCROOT)
!endif
# This is Complement project (really not extern):
!ifndef CoMT_LIB_DIR
CoMT_LIB_DIR = $(INSTALL_LIB_DIR)
!endif
!ifndef CoMT_LIB_DIR_DBG
CoMT_LIB_DIR_DBG = $(INSTALL_LIB_DIR_DBG)
!endif
!ifndef CoMT_LIB_DIR_STLDBG
CoMT_LIB_DIR_STLDBG = $(INSTALL_LIB_DIR_STLDBG)
!endif
!ifndef CoMT_BIN_DIR
CoMT_BIN_DIR = $(INSTALL_BIN_DIR)
!endif
!ifndef CoMT_BIN_DIR_DBG
CoMT_BIN_DIR_DBG = $(INSTALL_BIN_DIR_DBG)
!endif
!ifndef CoMT_BIN_DIR_STLDBG
CoMT_BIN_DIR_STLDBG = $(INSTALL_BIN_DIR_STLDBG)
!endif
!ifndef CoMT_INCLUDE_DIR
CoMT_INCLUDE_DIR = $(CoMT_DIR)/include
!endif
# This file reflect versions of third-party libraries that
# used in projects
# STLport library
!ifndef STLPORT_LIB_DIR
!ifdef CROSS_COMPILING
STLPORT_LIB_DIR = $(STLPORT_DIR)\lib\$(TARGET_NAME)
!else
STLPORT_LIB_DIR = $(STLPORT_DIR)\lib
!endif
!endif
!ifndef STLPORT_INCLUDE_DIR
STLPORT_INCLUDE_DIR = $(STLPORT_DIR)/stlport
!endif
!ifndef STLPORT_VER
STLPORT_VER = 4.5.5
!endif
# PostgreSQL library version:
#PG_INCLUDE ?= $(PG_DIR)/include
#PG_LIB ?= $(PG_DIR)/lib
#PG_LIB_VER_MAJOR = 2
#PG_LIB_VER_MINOR = 1
# Readline libraries version:
#RL_INCLUDE ?= /usr/local/include/readline
#RL_LIB ?= /usr/local/lib
#RL_LIB_VER_MAJOR = 4
#RL_LIB_VER_MINOR = 2
# gSOAP (http://gsoap2.sourceforge.net)
#gSOAP_INCLUDE_DIR ?= ${gSOAP_DIR}/include
#gSOAP_LIB_DIR ?= ${gSOAP_DIR}/lib
#gSOAP_BIN_DIR ?= ${gSOAP_DIR}/bin
# boost (http://www.boost.org, http://boost.sourceforge.net)
!ifdef STLP_BUILD_BOOST_PATH
INCLUDES=$(INCLUDES) /I$(STLP_BUILD_BOOST_PATH)
!endif
# This file reflect versions of third-party libraries that
# used in projects, with make-depend style
@@ -0,0 +1,10 @@
CXX = icl
CC = icl
LINK = xilink
CFLAGS_COMMON = /nologo /W4 /GR /GX
CXXFLAGS_COMMON = /nologo /W4 /GR /GX
!include $(RULESBASE)/$(USE_MAKE)/vc-common.mak
@@ -0,0 +1,62 @@
# -*- makefile -*- Time-stamp: <03/10/26 16:17:03 ptr>
# $Id$
clobber: clean
@if exist $(SO_NAME_OUT) del /F /Q $(SO_NAME_OUT)
@if exist $(LIB_NAME_OUT) del /F /Q $(LIB_NAME_OUT)
@if exist $(EXP_NAME_OUT) del /F /Q $(EXP_NAME_OUT)
@if exist $(PDB_NAME_OUT) del /F /Q $(PDB_NAME_OUT)
@if exist $(RES_NAME_OUT) del /F /Q $(RES_NAME_OUT)
@if exist $(MANIFEST_NAME_OUT) del /F /Q $(MANIFEST_NAME_OUT)
@if exist $(A_NAME_OUT) del /F /Q $(A_NAME_OUT)
@if exist $(A_PDB_NAME_OUT) del /F /Q $(A_PDB_NAME_OUT)
@if exist $(SO_NAME_OUT_DBG) del /F /Q $(SO_NAME_OUT_DBG)
@if exist $(LIB_NAME_OUT_DBG) del /F /Q $(LIB_NAME_OUT_DBG)
@if exist $(EXP_NAME_OUT_DBG) del /F /Q $(EXP_NAME_OUT_DBG)
@if exist $(PDB_NAME_OUT_DBG) del /F /Q $(PDB_NAME_OUT_DBG)
@if exist $(RES_NAME_OUT_DBG) del /F /Q $(RES_NAME_OUT_DBG)
@if exist $(MANIFEST_NAME_OUT_DBG) del /F /Q $(MANIFEST_NAME_OUT_DBG)
@if exist $(A_NAME_OUT_DBG) del /F /Q $(A_NAME_OUT_DBG)
@if exist $(A_PDB_NAME_OUT_DBG) del /F /Q $(A_PDB_NAME_OUT_DBG)
@if exist $(SO_NAME_OUT_STLDBG) del /F /Q $(SO_NAME_OUT_STLDBG)
@if exist $(LIB_NAME_OUT_STLDBG) del /F /Q $(LIB_NAME_OUT_STLDBG)
@if exist $(EXP_NAME_OUT_STLDBG) del /F /Q $(EXP_NAME_OUT_STLDBG)
@if exist $(PDB_NAME_OUT_STLDBG) del /F /Q $(PDB_NAME_OUT_STLDBG)
@if exist $(RES_NAME_OUT_STLDBG) del /F /Q $(RES_NAME_OUT_STLDBG)
@if exist $(MANIFEST_NAME_OUT_STLDBG) del /F /Q $(MANIFEST_NAME_OUT_STLDBG)
@if exist $(A_NAME_OUT_STLDBG) del /F /Q $(A_NAME_OUT_STLDBG)
@if exist $(A_PDB_NAME_OUT_STLDBG) del /F /Q $(A_PDB_NAME_OUT_STLDBG)
@-if exist $(OUTPUT_DIR) rd $(OUTPUT_DIR)
@-if exist $(OUTPUT_DIR_DBG) rd $(OUTPUT_DIR_DBG)
@-if exist $(OUTPUT_DIR_STLDBG) rd $(OUTPUT_DIR_STLDBG)
@-if exist $(OUTPUT_DIR_A) rd $(OUTPUT_DIR_A)
@-if exist $(OUTPUT_DIR_A_DBG) rd $(OUTPUT_DIR_A_DBG)
@-if exist $(OUTPUT_DIR_A_STLDBG) rd $(OUTPUT_DIR_A_STLDBG)
@-if exist $(OUTPUT_TARGET_DIR) rd $(OUTPUT_TARGET_DIR)
@-if exist $(OUTPUT_ROOT_DIR) rd $(OUTPUT_ROOT_DIR)
distclean: clobber
@if exist $(INSTALL_BIN_DIR)\$(SO_NAME) del /F /Q $(INSTALL_BIN_DIR)\$(SO_NAME)
@if exist $(INSTALL_BIN_DIR)\$(PDB_NAME) del /F /Q $(INSTALL_BIN_DIR)\$(PDB_NAME)
@if exist $(INSTALL_LIB_DIR)\$(LIB_NAME)del /F /Q $(INSTALL_LIB_DIR)\$(LIB_NAME)
@if exist $(INSTALL_LIB_DIR)\$(EXP_NAME) del /F /Q $(INSTALL_LIB_DIR)\$(EXP_NAME)
@if exist $(INSTALL_BIN_DIR_DBG)\$(SO_NAME_DBG) del /F /Q $(INSTALL_BIN_DIR_DBG)\$(SO_NAME_DBG)
@if exist $(INSTALL_BIN_DIR_DBG)\$(PDB_NAME_DBG) del /F /Q $(INSTALL_BIN_DIR_DBG)\$(PDB_NAME_DBG)
@if exist $(INSTALL_LIB_DIR_DBG)\$(LIB_NAME_DBG) del /F /Q $(INSTALL_LIB_DIR_DBG)\$(LIB_NAME_DBG)
@if exist $(INSTALL_LIB_DIR_DBG)\$(EXP_NAME_DBG) del /F /Q $(INSTALL_LIB_DIR_DBG)\$(EXP_NAME_DBG)
@if exist $(INSTALL_BIN_DIR_STLDBG)\$(SO_NAME_STLDBG) del /F /Q $(INSTALL_BIN_DIR_STLDBG)\$(SO_NAME_STLDBG)
@if exist $(INSTALL_BIN_DIR_STLDBG)\$(PDB_NAME_STLDBG) del /F /Q $(INSTALL_BIN_DIR_STLDBG)\$(PDB_NAME_STLDBG)
@if exist $(INSTALL_LIB_DIR_STLDBG)\$(LIB_NAME_STLDBG) del /F /Q $(INSTALL_LIB_DIR_STLDBG)\$(LIB_NAME_STLDBG)
@if exist $(INSTALL_LIB_DIR_STLDBG)\$(EXP_NAME_STLDBG) del /F /Q $(INSTALL_LIB_DIR_STLDBG)\$(EXP_NAME_STLDBG)
@if exist $(INSTALL_STATIC_LIB_DIR)\$(A_NAME) del /F /Q $(INSTALL_STATIC_LIB_DIR)\$(A_NAME)
@if exist $(INSTALL_STATIC_LIB_DIR)\$(A_PDB_NAME) del /F /Q $(INSTALL_STATIC_LIB_DIR)\$(A_PDB_NAME)
@if exist $(INSTALL_STATIC_LIB_DIR_DBG)\$(A_NAME_DBG) del /F /Q $(INSTALL_STATIC_LIB_DIR_DBG)\$(A_NAME_DBG)
@if exist $(INSTALL_STATIC_LIB_DIR_DBG)\$(A_PDB_NAME_DBG) del /F /Q $(INSTALL_STATIC_LIB_DIR_DBG)\$(A_PDB_NAME_DBG)
@if exist $(INSTALL_STATIC_LIB_DIR_STLDBG)\$(A_NAME_STLDBG) del /F /Q $(INSTALL_STATIC_LIB_DIR_STLDBG)\$(A_NAME_STLDBG)
@if exist $(INSTALL_STATIC_LIB_DIR_STLDBG)\$(A_PDB_NAME_STLDBG) del /F /Q $(INSTALL_STATIC_LIB_DIR_STLDBG)\$(A_PDB_NAME_STLDBG)
@-if exist $(INSTALL_BIN_DIR) rd $(INSTALL_BIN_DIR)
@-if exist $(INSTALL_BIN_DIR_DBG) rd $(INSTALL_BIN_DIR_DBG)
@-if exist $(INSTALL_BIN_DIR_STLDBG) rd $(INSTALL_BIN_DIR_STLDBG)
@-if exist $(INSTALL_STATIC_LIB_DIR) rd $(INSTALL_STATIC_LIB_DIR)
@-if exist $(INSTALL_STATIC_LIB_DIR_DBG) rd $(INSTALL_STATIC_LIB_DIR_DBG)
@-if exist $(INSTALL_STATIC_LIB_DIR_STLDBG) rd $(INSTALL_STATIC_LIB_DIR_STLDBG)
@@ -0,0 +1,12 @@
# -*- makefile -*- Time-stamp: <04/05/01 00:34:42 ptr>
# $Id$
# defines missing in this file: LDFLAGS_COMMON
!ifndef LDLIBS
LDLIBS =
!endif
LDFLAGS_REL = $(LDFLAGS_REL) /DLL $(LDSEARCH) $(LDFLAGS_COMMON) /VERSION:$(MAJOR).$(MINOR)
LDFLAGS_DBG = $(LDFLAGS_DBG) /DLL $(LDSEARCH) $(LDFLAGS_COMMON) /VERSION:$(MAJOR).$(MINOR)
LDFLAGS_STLDBG = $(LDFLAGS_STLDBG) /DLL $(LDSEARCH) $(LDFLAGS_COMMON) /VERSION:$(MAJOR).$(MINOR)
@@ -0,0 +1,6 @@
# -*- makefile -*- Time-stamp: <04/05/01 00:34:42 ptr>
# $Id$
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /base:"0x00100000"
!include evc-common.mak
@@ -0,0 +1,6 @@
# -*- makefile -*- Time-stamp: <04/03/31 08:10:19 ptr>
# $Id$
LDFLAGS_COMMON = $(LDFLAGS_COMMON) /base:"0x00100000"
!include evc-common.mak
@@ -0,0 +1,3 @@
# build/Makefiles/nmake/lib/evc8.mak
!include evc-common.mak
@@ -0,0 +1,3 @@
# build/Makefiles/nmake/lib/evc9.mak
!include evc-common.mak
@@ -0,0 +1,5 @@
# -*- makefile -*- Time-stamp: <03/10/17 14:09:57 ptr>
# $Id$
!include $(RULESBASE)/$(USE_MAKE)/lib/vc-common.mak
@@ -0,0 +1,98 @@
# -*- makefile -*- Time-stamp: <04/03/22 22:17:22 ptr>
# $Id$
DBG_SUFFIX = d
STLDBG_SUFFIX = stl$(DBG_SUFFIX)
# default prefix: none
!ifndef LIB_NAME_PREFIX
LIB_NAME_PREFIX =
!endif
!ifdef LIB_MOTIF
LIB_NAME_SUFFIX = _$(LIB_MOTIF).$(MAJOR).$(MINOR)
!else
LIB_NAME_SUFFIX = .$(MAJOR).$(MINOR)
!endif
!ifdef WITH_STATIC_RTL
LIB_TYPE = _x
!else
LIB_TYPE =
!endif
# Shared libraries:
SO_NAME_BASE = $(LIB_NAME_PREFIX)$(LIBNAME)$(LIB_TYPE)$(LIB_NAME_SUFFIX)
SO_NAME = $(SO_NAME_BASE).$(SO)
LIB_NAME = $(SO_NAME_BASE).$(LIBEXT)
EXP_NAME = $(SO_NAME_BASE).$(EXP)
PDB_NAME = $(SO_NAME_BASE).pdb
RES_NAME = $(LIBNAME).res
MANIFEST_NAME = $(SO_NAME).manifest
SO_NAME_OUT = $(OUTPUT_DIR)\$(SO_NAME)
LIB_NAME_OUT = $(OUTPUT_DIR)\$(LIB_NAME)
EXP_NAME_OUT = $(OUTPUT_DIR)\$(EXP_NAME)
PDB_NAME_OUT = $(OUTPUT_DIR)\$(PDB_NAME)
RES_NAME_OUT = $(OUTPUT_DIR)\$(RES_NAME)
MANIFEST_NAME_OUT = $(OUTPUT_DIR)\$(MANIFEST_NAME)
SO_NAME_DBG_BASE = $(LIB_NAME_PREFIX)$(LIBNAME)$(DBG_SUFFIX)$(LIB_TYPE)$(LIB_NAME_SUFFIX)
SO_NAME_DBG = $(SO_NAME_DBG_BASE).$(SO)
LIB_NAME_DBG = $(SO_NAME_DBG_BASE).$(LIBEXT)
EXP_NAME_DBG = $(SO_NAME_DBG_BASE).$(EXP)
PDB_NAME_DBG = $(SO_NAME_DBG_BASE).pdb
MANIFEST_NAME_DBG = $(SO_NAME_DBG).manifest
SO_NAME_OUT_DBG = $(OUTPUT_DIR_DBG)\$(SO_NAME_DBG)
LIB_NAME_OUT_DBG = $(OUTPUT_DIR_DBG)\$(LIB_NAME_DBG)
EXP_NAME_OUT_DBG = $(OUTPUT_DIR_DBG)\$(EXP_NAME_DBG)
PDB_NAME_OUT_DBG = $(OUTPUT_DIR_DBG)\$(PDB_NAME_DBG)
RES_NAME_OUT_DBG = $(OUTPUT_DIR_DBG)\$(RES_NAME)
MANIFEST_NAME_OUT_DBG = $(OUTPUT_DIR_DBG)\$(MANIFEST_NAME_DBG)
SO_NAME_STLDBG_BASE = $(LIB_NAME_PREFIX)$(LIBNAME)$(STLDBG_SUFFIX)$(LIB_TYPE)$(LIB_NAME_SUFFIX)
SO_NAME_STLDBG = $(SO_NAME_STLDBG_BASE).$(SO)
LIB_NAME_STLDBG = $(SO_NAME_STLDBG_BASE).$(LIBEXT)
EXP_NAME_STLDBG = $(SO_NAME_STLDBG_BASE).$(EXP)
PDB_NAME_STLDBG = $(SO_NAME_STLDBG_BASE).pdb
MANIFEST_NAME_STLDBG = $(SO_NAME_STLDBG).manifest
SO_NAME_OUT_STLDBG = $(OUTPUT_DIR_STLDBG)\$(SO_NAME_STLDBG)
LIB_NAME_OUT_STLDBG = $(OUTPUT_DIR_STLDBG)\$(LIB_NAME_STLDBG)
EXP_NAME_OUT_STLDBG = $(OUTPUT_DIR_STLDBG)\$(EXP_NAME_STLDBG)
PDB_NAME_OUT_STLDBG = $(OUTPUT_DIR_STLDBG)\$(PDB_NAME_STLDBG)
RES_NAME_OUT_STLDBG = $(OUTPUT_DIR_STLDBG)\$(RES_NAME)
MANIFEST_NAME_OUT_STLDBG = $(OUTPUT_DIR_STLDBG)\$(MANIFEST_NAME_STLDBG)
# Static libraries:
!ifdef LIB_MOTIF
LIB_A_NAME_SUFFIX = _$(LIB_MOTIF)
!else
LIB_A_NAME_SUFFIX =
!endif
!ifdef WITH_DYNAMIC_RTL
LIB_A_TYPE = _statix
!else
LIB_A_TYPE = _static
!endif
A_NAME_BASE = $(LIB_NAME_PREFIX)$(LIBNAME)$(LIB_A_TYPE)$(LIB_A_NAME_SUFFIX)
A_NAME = $(A_NAME_BASE).$(ARCH)
A_NAME_OUT = $(OUTPUT_DIR_A)\$(A_NAME)
A_PDB_NAME = $(A_NAME_BASE).pdb
A_PDB_NAME_OUT = $(OUTPUT_DIR_A)\$(A_PDB_NAME)
A_NAME_DBG_BASE = $(LIB_NAME_PREFIX)$(LIBNAME)$(DBG_SUFFIX)$(LIB_A_TYPE)$(LIB_A_NAME_SUFFIX)
A_NAME_DBG = $(A_NAME_DBG_BASE).$(ARCH)
A_NAME_OUT_DBG = $(OUTPUT_DIR_A_DBG)\$(A_NAME_DBG)
A_PDB_NAME_DBG = $(A_NAME_DBG_BASE).pdb
A_PDB_NAME_OUT_DBG = $(OUTPUT_DIR_A_DBG)\$(A_PDB_NAME_DBG)
A_NAME_STLDBG_BASE = $(LIB_NAME_PREFIX)$(LIBNAME)$(STLDBG_SUFFIX)$(LIB_A_TYPE)$(LIB_A_NAME_SUFFIX)
A_NAME_STLDBG = $(A_NAME_STLDBG_BASE).$(ARCH)
A_NAME_OUT_STLDBG = $(OUTPUT_DIR_A_STLDBG)\$(A_NAME_STLDBG)
A_PDB_NAME_STLDBG = $(A_NAME_STLDBG_BASE).pdb
A_PDB_NAME_OUT_STLDBG = $(OUTPUT_DIR_A_STLDBG)\$(A_PDB_NAME_STLDBG)
@@ -0,0 +1,20 @@
# -*- makefile -*- Time-stamp: <03/10/17 14:41:05 ptr>
# $Id$
# Shared libraries tags
release-static: $(OUTPUT_DIR_A) $(A_NAME_OUT)
dbg-static: $(OUTPUT_DIR_A_DBG) $(A_NAME_OUT_DBG)
stldbg-static: $(OUTPUT_DIR_A_STLDBG) $(A_NAME_OUT_STLDBG)
$(A_NAME_OUT): $(OBJ_A)
$(AR) $(AR_INS_R) $(AR_OUT) $(OBJ_A)
$(A_NAME_OUT_DBG): $(OBJ_A_DBG)
$(AR) $(AR_INS_R) $(AR_OUT) $(OBJ_A_DBG)
$(A_NAME_OUT_STLDBG): $(OBJ_A_STLDBG)
$(AR) $(AR_INS_R) $(AR_OUT) $(OBJ_A_STLDBG)
@@ -0,0 +1,17 @@
# Time-stamp: <03/10/17 19:29:26 ptr>
# $Id$
install-static: install-release-static install-dbg-static install-stldbg-static
install-release-static: release-static $(INSTALL_STATIC_LIB_DIR)
$(INSTALL_A) $(A_NAME_OUT) $(INSTALL_STATIC_LIB_DIR)
@if exist $(A_PDB_NAME_OUT) $(INSTALL_A) $(A_PDB_NAME_OUT) $(INSTALL_STATIC_LIB_DIR)
install-dbg-static: dbg-static $(INSTALL_STATIC_LIB_DIR_DBG)
$(INSTALL_A) $(A_NAME_OUT_DBG) $(INSTALL_STATIC_LIB_DIR_DBG)
@if exist $(A_PDB_NAME_OUT_DBG) $(INSTALL_A) $(A_PDB_NAME_OUT_DBG) $(INSTALL_STATIC_LIB_DIR_DBG)
install-stldbg-static: stldbg-static $(INSTALL_STATIC_LIB_DIR_STLDBG)
$(INSTALL_A) $(A_NAME_OUT_STLDBG) $(INSTALL_STATIC_LIB_DIR_STLDBG)
@if exist $(A_PDB_NAME_OUT_STLDBG) $(INSTALL_A) $(A_PDB_NAME_OUT_STLDBG) $(INSTALL_STATIC_LIB_DIR_STLDBG)
Loaded 100 of 1628 files, more files were not shown because too many files have changed in this diff. Show more