/[eiffelstudio]/branches/Eiffel_57_docking/Src/Eiffel/interface/new_graphical/commands/eb_c_compilation_command.e
ViewVC logotype

Contents of /branches/Eiffel_57_docking/Src/Eiffel/interface/new_graphical/commands/eb_c_compilation_command.e

Parent Directory Parent Directory | Revision Log Revision Log


Revision 62171 - (show annotations)
Tue Aug 1 01:27:17 2006 UTC (13 years, 4 months ago) by larryl
File size: 3270 byte(s)
First commit docking tabbed Eiffel Studio.
1 indexing
2 description : "Command to perform C compilation of the system"
3 legal: "See notice at end of class."
4 status: "See notice at end of class."
5 date : "$Date$"
6 revision : "$Revision$"
7
8 class
9 EB_C_COMPILATION_COMMAND
10
11 inherit
12 EB_DEVELOPMENT_WINDOW_COMMAND
13
14 EB_MENUABLE_COMMAND
15
16 SHARED_EIFFEL_PROJECT
17
18 EB_SHARED_WINDOW_MANAGER
19
20 PROJECT_CONTEXT
21
22 SYSTEM_CONSTANTS
23
24 create
25 make_workbench,
26 make_finalized
27
28 feature {NONE} -- Initialization
29
30 make_workbench (a_target: like target) is
31 -- Initialize Current to invoke C compilation
32 -- in workbench mode.
33 do
34 is_workbench := True
35 make (a_target)
36 end
37
38 make_finalized (a_target: like target) is
39 -- Initialize Current to invoke C compilation
40 -- in finalize mode.
41 do
42 is_workbench := False
43 make (a_target)
44 end
45
46 feature -- Access
47
48 is_workbench: BOOLEAN
49 -- Is Current command used for workbench C compilation
50
51 feature -- Execution
52
53 execute is
54 -- Execute the C compilation.
55 local
56 makefile_sh_name: FILE_NAME
57 file: PLAIN_TEXT_FILE
58 wd: EV_WARNING_DIALOG
59 do
60 if is_workbench then
61 create makefile_sh_name.make_from_string (project_location.workbench_path)
62 else
63 create makefile_sh_name.make_from_string (project_location.final_path)
64 end
65 makefile_sh_name.set_file_name (Makefile_SH)
66 create file.make (makefile_sh_name)
67 if file.exists then
68 Eiffel_project.call_finish_freezing (is_workbench)
69 else
70 create wd.make_with_text (Warning_messages.w_Makefile_does_not_exist (makefile_sh_name))
71 wd.show_modal_to_window (window_manager.last_focused_window.window)
72 end
73 end
74
75 feature {NONE} -- Implementation
76
77 menu_name: STRING is
78 -- Name as it appears in the menu (with & symbol).
79 do
80 if is_workbench then
81 Result := Interface_names.m_Compilation_C_Workbench
82 else
83 Result := Interface_names.m_Compilation_C_Final
84 end
85 end
86
87 pixmap: EV_PIXMAP;
88 -- Pixmap
89
90 indexing
91 copyright: "Copyright (c) 1984-2006, Eiffel Software"
92 license: "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"
93 licensing_options: "http://www.eiffel.com/licensing"
94 copying: "[
95 This file is part of Eiffel Software's Eiffel Development Environment.
96
97 Eiffel Software's Eiffel Development Environment is free
98 software; you can redistribute it and/or modify it under
99 the terms of the GNU General Public License as published
100 by the Free Software Foundation, version 2 of the License
101 (available at the URL listed under "license" above).
102
103 Eiffel Software's Eiffel Development Environment is
104 distributed in the hope that it will be useful, but
105 WITHOUT ANY WARRANTY; without even the implied warranty
106 of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
107 See the GNU General Public License for more details.
108
109 You should have received a copy of the GNU General Public
110 License along with Eiffel Software's Eiffel Development
111 Environment; if not, write to the Free Software Foundation,
112 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
113 ]"
114 source: "[
115 Eiffel Software
116 356 Storke Road, Goleta, CA 93117 USA
117 Telephone 805-685-1006, Fax 805-685-6869
118 Website http://www.eiffel.com
119 Customer support http://support.eiffel.com
120 ]"
121
122 end -- class C_COMPILATION_COMMAND

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.23