mirror of
https://github.com/MidnightCommander/mc
synced 2025-01-03 18:14:25 +03:00
README.NT and README.OS2 are replaced with README.PC
Appropriate changes for "make dist" in Makefile.in
This commit is contained in:
parent
7d12623b27
commit
83f9525a78
@ -17,8 +17,8 @@ INSTALL_DATA = @INSTALL_DATA@
|
|||||||
DISTMAIN = configure configure.in NEWS README INSTALL INSTALL.FAST \
|
DISTMAIN = configure configure.in NEWS README INSTALL INSTALL.FAST \
|
||||||
Makefile.in FAQ COPYING create_vcs install-sh \
|
Makefile.in FAQ COPYING create_vcs install-sh \
|
||||||
config.h.in mc-aclocal.m4 aclocal.m4 acconfig.h \
|
config.h.in mc-aclocal.m4 aclocal.m4 acconfig.h \
|
||||||
VERSION mcfn_install.in Make.common.in README.NT \
|
VERSION mcfn_install.in Make.common.in README.PC \
|
||||||
mc.spec Specfile README.QNX README.OS2 VERSION.in \
|
mc.spec Specfile README.QNX VERSION.in \
|
||||||
mkinstalldirs autogen.sh ABOUT-NLS
|
mkinstalldirs autogen.sh ABOUT-NLS
|
||||||
|
|
||||||
all:
|
all:
|
||||||
|
126
README.NT
126
README.NT
@ -1,126 +0,0 @@
|
|||||||
|
|
||||||
Midnight Commander for Windows NT and Windows '95
|
|
||||||
-------------------------------------------------
|
|
||||||
|
|
||||||
0. Hello
|
|
||||||
1. Compiling
|
|
||||||
2. Changes made
|
|
||||||
|
|
||||||
0. Hello
|
|
||||||
--------
|
|
||||||
Hello, this is the Midnight Commander port to Win32. It has many bugs, but is
|
|
||||||
quite stable now. Maybe you can help as an beta tester or as a programmer. In
|
|
||||||
either case you would like subscribe to mc-devel list
|
|
||||||
(see readme files in main doc on how to do this) and contact us.
|
|
||||||
|
|
||||||
1. Compiling
|
|
||||||
------------
|
|
||||||
|
|
||||||
1.1. Compiler
|
|
||||||
----------------
|
|
||||||
Microsoft Visual C++ for Windows NT (all versions, including 4.x) are supported.
|
|
||||||
In nt/makefile you can find an external makefile, and in nt/makefile.vc1.nt, vc4.nt
|
|
||||||
projects for the visual IDE. Two makefiles are add since the version 3.5.39. They
|
|
||||||
are produced from MS VC 4.x and are named as ntaxp.mak (for Windows NT AXP)
|
|
||||||
and ntint.mak (for Windows NT Intel). If you want to use them, you will have to
|
|
||||||
change the path coded in these two files.
|
|
||||||
|
|
||||||
Other compilers such as Watcom, or Borland tools should be quite
|
|
||||||
straightforward, but has not been tested.
|
|
||||||
|
|
||||||
Under Cygnus tools, apparently everything works just fine.
|
|
||||||
|
|
||||||
1.2. General issues
|
|
||||||
--------------------
|
|
||||||
Preprocessor
|
|
||||||
Define:
|
|
||||||
LIBDIR
|
|
||||||
_OS_NT - OS flag
|
|
||||||
OS2_NT - Flag for OS/2 and NT
|
|
||||||
HAVE_CONFIG_H - config.h flag
|
|
||||||
|
|
||||||
Includes:
|
|
||||||
So as to avoid chaos in include files, I decided to create some
|
|
||||||
fake includes for UNIX counterparts. The empty files you need to create are:
|
|
||||||
pwd.h grp.h
|
|
||||||
sys/param.h sys/time.h
|
|
||||||
|
|
||||||
1.3 Windowing Library
|
|
||||||
--------------------------------
|
|
||||||
Currently only support for S-lang windowing library is given. I know no curses
|
|
||||||
public library ported to Win32 consoles, and I think it is useless to port
|
|
||||||
it now. You may want to download the complete distribution it from
|
|
||||||
ftp://space.mit.edu/pub/davis.
|
|
||||||
|
|
||||||
|
|
||||||
2. Changes made
|
|
||||||
---------------
|
|
||||||
|
|
||||||
2.1. Changes to main code
|
|
||||||
-------------------------
|
|
||||||
They are enclosed in #ifdef _OS_NT or OS2_NT blocks.
|
|
||||||
|
|
||||||
Wrote something similar to statfs in UTIL.C
|
|
||||||
Wrote truncate.
|
|
||||||
Changed (almost) all references to "/" path slash with PATH_CHAR and strPATH_CHAR.
|
|
||||||
Changed name of CONTROL_FILE.
|
|
||||||
Changed name of shell and call to shell.
|
|
||||||
|
|
||||||
In some cases we supressed code. This is temporal (so that mc can compile). In
|
|
||||||
the future we will provide fake or true interfaces for these features.
|
|
||||||
- Links: creation and information on links are not supported in NT. We
|
|
||||||
should provide a fake interface for the local filesystem and
|
|
||||||
a true one for networked.
|
|
||||||
- GID/UID queries (get_user, owner, preserve UID/GID on copy, ...).
|
|
||||||
- TERMinals: all the code directly done with terminals must be supressed.
|
|
||||||
- Signals: deleted. Should support the native ones.
|
|
||||||
- pipes: had some trouble in ext.c and with error_pipes but soon will be fixed.
|
|
||||||
- Chown command: Not supported yet.
|
|
||||||
|
|
||||||
2.2. Files rewritten
|
|
||||||
--------------------
|
|
||||||
There are 3 files with so many changes that they have been moved to independent
|
|
||||||
archives (or OS dependent).
|
|
||||||
- Chmod.nt.c: this command will query and change attributes (hidden, system,
|
|
||||||
archive,...). Maybe we should write a real chmod (and also a
|
|
||||||
chown). It is not finished, but works almost fine. Look that
|
|
||||||
the stat st_mode member is filled with attributes, not modes.
|
|
||||||
- Cons.handler.nt.c: Supports same API as linux cons.handler.c. It allocates
|
|
||||||
a new console buffer and switches between the two when doing a
|
|
||||||
shell. The new allocated one is the used by Midnight commander.
|
|
||||||
(look that to make this we should also redirect standard handles)
|
|
||||||
- Key.nt.c: a static table maps Virtual Key codes to Curses-like Key codes.
|
|
||||||
Also mouse events are supported.
|
|
||||||
still preliminar.
|
|
||||||
- utilnt.c: Contains utilunix.c functions, with Win32 implementation
|
|
||||||
|
|
||||||
2.3. New files
|
|
||||||
--------------
|
|
||||||
- drive.nt.c: A Change Drive command has been implemented. Two lines
|
|
||||||
in main.c were included (in the left/right panel menus).
|
|
||||||
The funcs drive_cmd_a/b are implemented in this new file.
|
|
||||||
It will build a dialog with available drives as buttons.
|
|
||||||
bug: too many drives are not supported (think just 7). have
|
|
||||||
to rewrite to support more than one line.
|
|
||||||
|
|
||||||
- util.debug.c: developers-only utilities to trace Win32 API call error codes
|
|
||||||
- util.WinNT.c: Windows NT specific functions:
|
|
||||||
getuid(): Will check your priviledges and return 0 (root)
|
|
||||||
if you have Administrator priviledges.
|
|
||||||
- util.Win32.c: Windows NT & 95 utilities: (specific to Win32, no UNIX counterpart)
|
|
||||||
getEXEtype(): check if executable is CUI or GUI.
|
|
||||||
|
|
||||||
2.4. Changes made from me (Alexander Dong, ado@software-ag.de)
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
I have hacked some codes for Windows NT AXP and NT Intel.
|
|
||||||
Drive.nt.c was rewritten for a beautiful Drive_Change dialog window.
|
|
||||||
|
|
||||||
All main source changed from me are marked with the comment /* .ado */.
|
|
||||||
|
|
||||||
I have also included two own Makefiles:
|
|
||||||
ntaxp.mak (for Windows NT Alpha) and
|
|
||||||
ntint.mak (for Windows 95/NT Intel).
|
|
||||||
You will have to change the path in these files before use them. They
|
|
||||||
are both for Microsoft Visual C++ 4.x.
|
|
||||||
|
|
108
README.OS2
108
README.OS2
@ -1,108 +0,0 @@
|
|||||||
Midnight Commander for OS/2 -- version 3.5.42 (Development version)
|
|
||||||
-----------------------------------------------------------------------
|
|
||||||
May 26, 1997
|
|
||||||
|
|
||||||
|
|
||||||
This file contains special information for Midnight Commander for OS/2.
|
|
||||||
For more information about Midnight Commander, please read the original FAQ.
|
|
||||||
|
|
||||||
0. Hello
|
|
||||||
--------
|
|
||||||
|
|
||||||
This is the port of Midnight Commander to OS/2. I think it's now a
|
|
||||||
BETA version still with some unknown bugs, use it as your own risk!
|
|
||||||
|
|
||||||
|
|
||||||
1. Installation Instructions for binaries
|
|
||||||
------------
|
|
||||||
|
|
||||||
The default installation position for the binary files is D:\MC, just copy
|
|
||||||
all the files there and set the PATH to D:\MC. A small REXX program install.cmd
|
|
||||||
will help you create a desktop icon. With this version, using -S switch will
|
|
||||||
produce a batch file for you to change the directory to the last working place
|
|
||||||
upon exit. The batch file nc.cmd will demonstrate this feature.
|
|
||||||
|
|
||||||
|
|
||||||
2. Special notes
|
|
||||||
-----------
|
|
||||||
|
|
||||||
You can also change the drive with F11 and F12.
|
|
||||||
|
|
||||||
Known bugs:
|
|
||||||
- CTRL-C to external program not possible
|
|
||||||
- CTRL-O not work.
|
|
||||||
|
|
||||||
|
|
||||||
3. Operating System
|
|
||||||
-----------
|
|
||||||
|
|
||||||
I am using Warp 4 and IBM VisualAge C++ for this port. I don't think that
|
|
||||||
it is a problem to run it with OS/2 2.x, but I can not verify it.
|
|
||||||
Please drop me a mail and tell me how it works with the other OS versions.
|
|
||||||
|
|
||||||
|
|
||||||
4. How to compile it
|
|
||||||
-----------
|
|
||||||
|
|
||||||
VisualAge C++ 3.0 was used for this port. You can recompile the program
|
|
||||||
with the following steps:
|
|
||||||
|
|
||||||
0. The source files are located in D:\work\mc\mc-3.5.xx\. You will have to
|
|
||||||
replace this string with your location in the makefiles.
|
|
||||||
|
|
||||||
Goto \work\mc\mc-3.5.xx:
|
|
||||||
|
|
||||||
1. Copy all the files from os2\ into src\.
|
|
||||||
|
|
||||||
2. Install Slang 0.99.38. (ftp://space.mit.edu/pub/davis)
|
|
||||||
Patch Slang to make it works with Midnight Commander.
|
|
||||||
(I have disabled the multithreaded key handling because the key
|
|
||||||
control will be done in MC)
|
|
||||||
|
|
||||||
3. Copy the os2edit\ files to edit\.
|
|
||||||
Use Makefile.release to build a released version of libedit.lib or
|
|
||||||
Makefile.debug for a debug version.
|
|
||||||
|
|
||||||
4. Goto src\.
|
|
||||||
If you are going to use the WorkFrame for rebuild the makefile,
|
|
||||||
you have to delete the following files from src\:
|
|
||||||
achown.c
|
|
||||||
chmod.c
|
|
||||||
chown.c
|
|
||||||
cons.handler.c
|
|
||||||
cons.saver.c
|
|
||||||
cons.saver.h
|
|
||||||
fixhlp.c
|
|
||||||
key.c
|
|
||||||
key.unx.c
|
|
||||||
learn.c
|
|
||||||
learn.h
|
|
||||||
mad.c
|
|
||||||
Makefile.in
|
|
||||||
man2hlp.c
|
|
||||||
mfmt.c
|
|
||||||
slint.c
|
|
||||||
utilunix.c
|
|
||||||
xcurses.c
|
|
||||||
Otherwise, just type
|
|
||||||
nmake /f makefile.release (for release version)
|
|
||||||
nmake /f makefile.debug (for debug version)
|
|
||||||
|
|
||||||
|
|
||||||
4.1 Changes to main code:
|
|
||||||
|
|
||||||
They are enclosed in "#if defined(__os2__)" or OS2_NT blocks. Because of the
|
|
||||||
diffences between OS/2 and the other OSs, some of the files are completely
|
|
||||||
rewritten with call to APIs. They are named as *.os2.[ch].
|
|
||||||
|
|
||||||
5. Contact Information
|
|
||||||
-----------
|
|
||||||
|
|
||||||
Because of limited time and resources, this program has not been
|
|
||||||
thoroughly tested. Please report bugs (only those special under OS/2)
|
|
||||||
and comments via e-mail to:
|
|
||||||
|
|
||||||
ado@software-ag.de
|
|
||||||
|
|
||||||
----
|
|
||||||
Alexander Dong
|
|
109
README.PC
Normal file
109
README.PC
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
|
||||||
|
Midnight Commander for Win32 and OS/2
|
||||||
|
-------------------------------------
|
||||||
|
|
||||||
|
0. Introduction
|
||||||
|
1. Compiling
|
||||||
|
2. Changes made
|
||||||
|
3. Authors and maintainers
|
||||||
|
|
||||||
|
0. Introduction
|
||||||
|
---------------
|
||||||
|
Yes, Midnight Commander can be compiled for Win32 (Microsoft Windows 95, 98 and
|
||||||
|
NT) and OS/2. It has many bugs, but is quite stable now. Maybe you can help as
|
||||||
|
a beta tester or as a programmer. In either case you would like subscribe to
|
||||||
|
mc-devel list (see readme files in main doc on how to do this) and contact us.
|
||||||
|
Please note, that Midnight Commander remains primarily a file manager for
|
||||||
|
UNIX-like systems, so recent changes may occasionally break something.
|
||||||
|
You should not expect that it will work on your system better than file
|
||||||
|
managers written natively for your OS.
|
||||||
|
|
||||||
|
1. Compiling
|
||||||
|
------------
|
||||||
|
|
||||||
|
1.1. Compiler
|
||||||
|
-------------
|
||||||
|
If you really want to enjoy free software under your non-free OS, you should
|
||||||
|
try free compilers. Three of them are supported: EMX (OS/2), RSX and Mingw32
|
||||||
|
(Win32). RSX is based on EMX, and can also cross-compile for OS/2 under
|
||||||
|
Windows. Mingw32 is concieved as a free clone for Microsoft Visual C++.
|
||||||
|
Please note, that all above compiler are based on GCC (GNU C compiler), but
|
||||||
|
use different libraries.
|
||||||
|
CygWin32 is not (yet) powerful enough to compile Windows-specipic portion of
|
||||||
|
the Midnight Commander, but you may try to compile MC using UNIX configuration
|
||||||
|
files. As you can easily imagine, resulting binary will need termcap or
|
||||||
|
terminfo and use ANSI-sequences for output which is probably not what you want.
|
||||||
|
You may also try non-free compilers. Microsoft Visual C++ (4.0 and above),
|
||||||
|
Borland C++ (both for Win32 and OS/2) and IBC CSet are supported. "Supported"
|
||||||
|
means merely that there are specific makefiles for those compilers, but it
|
||||||
|
does not even assume that you will compile MC using them out-of-box.
|
||||||
|
|
||||||
|
1.2. General issues
|
||||||
|
-------------------
|
||||||
|
See pc/README, pc/BUGS, pc/TODO for the information concerning current state
|
||||||
|
of the port.
|
||||||
|
You may need to create some fake includes to compile. You may also need to
|
||||||
|
change something in the MC sources.
|
||||||
|
|
||||||
|
1.3 Windowing Library
|
||||||
|
---------------------
|
||||||
|
Currently only support for SLang windowing library is given. There are
|
||||||
|
curses clones ported to Win32 and OS/2, but I believe that since there is
|
||||||
|
no analogs for autoconf for those systems, we should avoid unnecessary
|
||||||
|
difficulties.
|
||||||
|
Currently the PC port SLang included in this distribution (see slang/
|
||||||
|
subdirectory). This is a subset of SLang 0.99.38 distribution with some
|
||||||
|
bugs fixed. There are also MC-specific changes in the code.
|
||||||
|
SLang 0.99.38 has problems with OS/2 if you like console with more than
|
||||||
|
80x25 characters. You may try to use a newer SLang. It is possible, but it
|
||||||
|
is also quite tricky.
|
||||||
|
|
||||||
|
1.4 Features and Limitations
|
||||||
|
----------------------------
|
||||||
|
Internal editor is supported (including syntax highlighting).
|
||||||
|
VFS (virtual file system) is not supported.
|
||||||
|
X11 ports are not supported.
|
||||||
|
|
||||||
|
2. Changes made
|
||||||
|
---------------
|
||||||
|
|
||||||
|
2.1. Changes to main code
|
||||||
|
-------------------------
|
||||||
|
Changes in the main code are enclosed in #ifdef _OS_NT, __os2__ or OS2_NT
|
||||||
|
blocks.
|
||||||
|
|
||||||
|
In some cases we supressed code. This is temporal (so that mc can compile). In
|
||||||
|
the future we will provide fake or true interfaces for these features.
|
||||||
|
- Links: creation and information on links are not supported. We
|
||||||
|
should provide a fake interface for the local filesystem and
|
||||||
|
a true one for networked.
|
||||||
|
- GID/UID queries (get_user, owner, preserve UID/GID on copy, ...).
|
||||||
|
- TERMinals: all the code directly done with terminals must be supressed.
|
||||||
|
- Signals: deleted. Should support the native ones.
|
||||||
|
- pipes: had some trouble in ext.c and with error_pipes but soon will be
|
||||||
|
fixed.
|
||||||
|
- Chown command: Not supported yet.
|
||||||
|
|
||||||
|
2.2. Files rewritten
|
||||||
|
--------------------
|
||||||
|
There are several files with so many changes that they have been moved to pc/
|
||||||
|
subdirectory. Some of them are common for Win32 and OS/2, some of them are
|
||||||
|
system-specific. System-specific files bear a clear mark in their names
|
||||||
|
(for example, dirent_nt.c)
|
||||||
|
Our intension should be, however, to make most code system-independent. This
|
||||||
|
would increase code reuseabilibity and maintainability :-)
|
||||||
|
See pc/ subdirectory for further details.
|
||||||
|
|
||||||
|
3. Authors and maintainers
|
||||||
|
--------------------------
|
||||||
|
This port is based on the port for Windows NT by
|
||||||
|
Juan Grigera <grigera@isis.unlp.edu.ar>
|
||||||
|
and the port for OS/2 by
|
||||||
|
Alexander Dong <ado@software-ag.de>
|
||||||
|
Both ports were merged to one PC port by me,
|
||||||
|
Pavel Roskin <pavel_roskin@geocities.com>
|
||||||
|
Please note, that I'm using Linux now. I have access to Windows 95 machines,
|
||||||
|
but I have no access to OS/2 machines. If you are really keen to continue my
|
||||||
|
work, please drop me a letter.
|
||||||
|
|
||||||
|
Pavel Roskin <pavel_roskin@geocities.com>
|
Loading…
Reference in New Issue
Block a user