Complete.Org: Mailing Lists: Archives: freeciv-dev: December 2001:
[Freeciv-Dev] Library Dependencies
Home

[Freeciv-Dev] Library Dependencies

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Library Dependencies
From: Chris Richards <chrisr@xxxxxxxxxxxxxxxx>
Date: 30 Dec 2001 01:19:25 -0600

Howdy.  I ran a dependency check against the
libraries--libcivserver.a, libcivai.a, libcivcommon.a, and
libguiclient.a (specifically gui-xaw).  I'll follow with my
expectations and where it differed.  It may be worthwhile to remove
circular dependencies in the future?

I think it would nice to have something analogous to libcivrules.a.
This would be dependent on libcivcommon.a and could provide all of the
basic rules of how the game is played. :)

Anyway, I only share with the group because this helped me understand
a little more how the code base was laid out.  It serves no other
purpose.

My script that generated the output may have errors, so take that with
a grain of salt.  For example, I only check .a's and so it looked like
libclient was dependent on libserver due to advance_unit_focus and
do_unit_focus because it was not part of the library, but rather in
control.o.

What I Thought:

libcivcommon.a is standalone
libcivserver.a depends on libcivcomon.a
libcivai.a depends on libcivcommon.a
libguiclient.a depends on libcivcommon.a

The Differences (format is in shorthand and follows library:symbol):

* All in all, not bad though the server->ai and ai->server plays fast
  and loose against each other.

libcommon depends on libserver:dealloc_id
libcommon depends on libserver:is_server
libcommon depends on libserver:send_unit_info

libserver depends on libai:ai_advisor_choose_building
libserver depends on libai:ai_do_first_activities
libserver depends on libai:ai_do_last_activities
libserver depends on libai:ai_eval_buildings
libserver depends on libai:ai_fix_unhappy
libserver depends on libai:ai_make_elvis
libserver depends on libai:ai_manage_explorer
libserver depends on libai:ai_next_tech_goal
libserver depends on libai:ai_scientists_taxmen
libserver depends on libai:assess_danger_player
libserver depends on libai:could_unit_move_to_tile
libserver depends on libai:dist_nearest_city
libserver depends on libai:unit_belligerence_basic
libserver depends on libai:unit_vulnerability_virtual

libai depends on libserver:add_adjust_workers
libai depends on libserver:ai_manage_settler
libai depends on libserver:amortize
libai depends on libserver:auto_arrange_workers
libai depends on libserver:auto_settler_do_goto
libai depends on libserver:build_points_left
libai depends on libserver:built_elsewhere
libai depends on libserver:can_place_worker_here
libai depends on libserver:can_sell_building
libai depends on libserver:can_unit_attack_tile
libai depends on libserver:can_unit_attack_unit_at_tile
libai depends on libserver:can_unit_move_to_tile_with_notify
libai depends on libserver:choose_tech
libai depends on libserver:choose_tech_goal
libai depends on libserver:city_got_barracks
libai depends on libserver:city_incite_cost
libai depends on libserver:city_refresh
libai depends on libserver:city_science_bonus
libai depends on libserver:city_shield_bonus
libai depends on libserver:city_tax_bonus
libai depends on libserver:city_tile_value
libai depends on libserver:contemplate_new_city
libai depends on libserver:contemplate_terrain_improvements
libai depends on libserver:count_diplomats_on_tile
libai depends on libserver:do_make_unit_veteran
libai depends on libserver:do_sell_building
libai depends on libserver:do_unit_disband_safe
libai depends on libserver:do_unit_goto
libai depends on libserver:find_boat
libai depends on libserver:food_weighting
libai depends on libserver:generate_warmap
libai depends on libserver:get_watchtower_vision
libai depends on libserver:goto_is_sane
libai depends on libserver:handle_diplomat_action
libai depends on libserver:handle_player_government
libai depends on libserver:handle_spaceship_action
libai depends on libserver:handle_spaceship_launch
libai depends on libserver:handle_unit_activity_request
libai depends on libserver:handle_unit_change_homecity
libai depends on libserver:handle_unit_disband
libai depends on libserver:handle_unit_disband_safe
libai depends on libserver:handle_unit_establish_trade
libai depends on libserver:handle_unit_help_build_wonder
libai depends on libserver:handle_unit_move_request
libai depends on libserver:is_building_other_wonder
libai depends on libserver:is_land_barbarian
libai depends on libserver:map_get_known
libai depends on libserver:notify_player
libai depends on libserver:notify_player_ex
libai depends on libserver:really_generate_warmap
libai depends on libserver:really_handle_city_buy
libai depends on libserver:really_handle_city_sell
libai depends on libserver:send_city_info
libai depends on libserver:send_player_info
libai depends on libserver:send_unit_info
libai depends on libserver:server_remove_worker_city
libai depends on libserver:settler_eats
libai depends on libserver:sync_cities
libai depends on libserver:unit_bribe_cost
libai depends on libserver:unit_profits_of_watchtower
libai depends on libserver:upgrade_unit
libai depends on libserver:wants_to_be_bigger
libai depends on libserver:warmap
libai depends on libserver:wipe_unit
libai depends on libserver:worst_worker_tile_value


[Prev in Thread] Current Thread [Next in Thread]
  • [Freeciv-Dev] Library Dependencies, Chris Richards <=