]> cygwin.com Git - cygwin-apps/setup.git/blame - main.cc
* main.cc (WinMain): Add setup version to starting setup.log entry
[cygwin-apps/setup.git] / main.cc
CommitLineData
23c9e63c
DD
1/*
2 * Copyright (c) 2000, Red Hat, Inc.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * A copy of the GNU General Public License can be found at
10 * http://www.gnu.org/
11 *
12 * Written by DJ Delorie <dj@cygnus.com>
13 *
14 */
15
16/* OK, here's how this works. Each of the steps needed for install -
17 dialogs, downloads, installs - are in their own files and have some
18 "do_*" function (prototype in dialog.h) and a resource id (IDD_* or
19 IDD_S_* in resource.h) for that step. Each step is responsible for
20 selecting the next step! See the NEXT macro in dialog.h. Note
21 that the IDD_S_* ids are fake; those are for steps that don't
22 really have a controlling dialog (some have progress dialogs, but
23 those don't count, although they could). Replace the IDD_S_* with
24 IDD_* if you create a real dialog for those steps. */
25
8507f105
DD
26static char *cvsid = "\n%%% $Id$\n";
27
23c9e63c
DD
28#include "win32.h"
29
30#include <stdio.h>
89b1a15b 31#include <stdlib.h>
23c9e63c
DD
32#include "resource.h"
33#include "dialog.h"
34#include "state.h"
35#include "msg.h"
36#include "netio.h"
37#include "find.h"
38#include "mount.h"
89b1a15b 39#include "log.h"
7cc06fd3 40#include "version.h"
89b1a15b
DD
41
42#include "port.h"
23c9e63c
DD
43
44void netio_test (char *);
45
46int next_dialog;
f57c332f 47int exit_msg = 0;
23c9e63c
DD
48
49HINSTANCE hinstance;
50
51int WINAPI
1fd6d0a2
DD
52WinMain (HINSTANCE h,
53 HINSTANCE hPrevInstance,
54 LPSTR command_line,
55 int cmd_show)
23c9e63c
DD
56{
57 hinstance = h;
58
8507f105 59 next_dialog = IDD_SPLASH;
23c9e63c 60
7cc06fd3 61 log (LOG_TIMESTAMP, "Starting cygwin install, version %s", version);
89b1a15b
DD
62
63 char cwd[_MAX_PATH];
64 GetCurrentDirectory (sizeof (cwd), cwd);
c92e1307 65 local_dir = strdup (cwd);
89b1a15b
DD
66 log (0, "Current Directory: %s", cwd);
67
23c9e63c
DD
68 while (next_dialog)
69 {
70 switch (next_dialog)
71 {
8507f105 72 case IDD_SPLASH: do_splash (h); break;
f57c332f 73 case IDD_SOURCE: do_source (h); break;
c92e1307 74 case IDD_LOCAL_DIR: do_local_dir (h); break;
f57c332f 75 case IDD_ROOT: do_root (h); break;
23c9e63c 76 case IDD_NET: do_net (h); break;
f57c332f
DD
77 case IDD_SITE: do_site (h); break;
78 case IDD_OTHER_URL: do_other (h); break;
79 case IDD_S_LOAD_INI: do_ini (h); break;
80 case IDD_S_FROM_CWD: do_fromcwd (h); break;
713bbe5f 81 case IDD_CHOOSE: do_choose (h); break;
f57c332f
DD
82 case IDD_S_DOWNLOAD: do_download (h); break;
83 case IDD_S_INSTALL: do_install (h); break;
50225eae 84 case IDD_DESKTOP: do_desktop (h); break;
f57c332f 85 case IDD_S_POSTINSTALL: do_postinstall (h); break;
23c9e63c
DD
86
87 default:
88 next_dialog = 0;
89 break;
90 }
91 }
92
89b1a15b 93 exit_setup (0);
23c9e63c 94}
This page took 0.033501 seconds and 5 git commands to generate.