version 1.8, 2025/03/22 18:43:54
|
version 1.17, 2025/03/30 01:36:58
|
Line 24
|
Line 24
|
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* |
* |
* $Log$ |
* $Log$ |
|
* Revision 1.17 2025/03/30 01:36:58 snw |
|
* Make it easier to bring back fma_gedit, fix double-free in global handler, limit $CHAR to 7-bit ASCII |
|
* |
|
* Revision 1.16 2025/03/24 20:59:58 snw |
|
* Try using DosCopy API instead of built-in cp function on OS/2 |
|
* |
|
* Revision 1.15 2025/03/24 20:58:05 snw |
|
* Try using DosCopy API instead of built-in cp function on OS/2 |
|
* |
|
* Revision 1.14 2025/03/24 20:57:06 snw |
|
* Try using DosCopy API instead of built-in cp function on OS/2 |
|
* |
|
* Revision 1.13 2025/03/24 20:15:09 snw |
|
* Set file permissions on freemd.exe on OS/2 in fmadm configure |
|
* |
|
* Revision 1.12 2025/03/24 20:13:34 snw |
|
* Set file permissions on freemd.exe on OS/2 in fmadm configure |
|
* |
|
* Revision 1.11 2025/03/24 19:25:48 snw |
|
* Make fmadm configure copy freem.exe to freemd.exe for daemon operation on OS/2 systems |
|
* |
|
* Revision 1.10 2025/03/24 19:22:16 snw |
|
* Make fmadm configure copy freem.exe to freemd.exe for daemon operation on OS/2 systems |
|
* |
|
* Revision 1.9 2025/03/24 19:19:42 snw |
|
* Make fmadm configure copy freem.exe to freemd.exe for daemon operation on OS/2 systems |
|
* |
* Revision 1.8 2025/03/22 18:43:54 snw |
* Revision 1.8 2025/03/22 18:43:54 snw |
* Make STRLEN 255 chars and add BIGSTR macro for larger buffers |
* Make STRLEN 255 chars and add BIGSTR macro for larger buffers |
* |
* |
Line 50
|
Line 77
|
#include "namespace.h" |
#include "namespace.h" |
#include "fs.h" |
#include "fs.h" |
|
|
|
#if defined(__OS2__) |
|
# include <os2.h> |
|
#endif |
|
|
#ifdef HAVE_LIBREADLINE |
#ifdef HAVE_LIBREADLINE |
# if defined(HAVE_READLINE_READLINE_H) |
# if defined(HAVE_READLINE_READLINE_H) |
# include <readline/readline.h> |
# include <readline/readline.h> |
Line 1024 int fm_edit (short object, int optc, cha
|
Line 1055 int fm_edit (short object, int optc, cha
|
case OBJ_ROUTINE: |
case OBJ_ROUTINE: |
return fma_routines_edit (optc, options); |
return fma_routines_edit (optc, options); |
|
|
/* |
/*case OBJ_GLOBAL: |
case OBJ_GLOBAL: |
|
return fma_globals_edit (optc, options); |
return fma_globals_edit (optc, options); |
*/ |
*/ |
|
|
default: |
default: |
fprintf (stderr, "fmadm: 'edit' is an invalid action for '%s'\n", obj_str); |
fprintf (stderr, "fmadm: 'edit' is an invalid action for '%s'\n", obj_str); |
Line 1137 void fm_configure (void)
|
Line 1167 void fm_configure (void)
|
snprintf (envbase, 4095, "%s/freem/%s", SYSCONFDIR, fma_environment); |
snprintf (envbase, 4095, "%s/freem/%s", SYSCONFDIR, fma_environment); |
snprintf (nsbase, 4095, "%s/freem/%s", LOCALSTATEDIR, fma_environment); |
snprintf (nsbase, 4095, "%s/freem/%s", LOCALSTATEDIR, fma_environment); |
|
|
|
#if defined(__OS2__) |
|
{ |
|
char srcfile[PATHLEN]; |
|
char dstfile[PATHLEN]; |
|
|
|
snprintf (srcfile, PATHLEN, "%s/bin/freem.exe", PREFIX); |
|
snprintf (dstfile, PATHLEN, "%s/bin/freemd.exe", PREFIX); |
|
|
|
unlink (dstfile); |
|
|
|
fprintf (stderr, "fmadm: running on OS/2; will copy %s to %s\n", srcfile, dstfile); |
|
|
|
if (DosCopy (srcfile, dstfile, 1) != 0) { |
|
fprintf (stderr, "fmadm: fatal error copying %s to %s\n", srcfile, dstfile); |
|
exit (1); |
|
} |
|
|
|
chmod (dstfile, 0755); |
|
} |
|
#else |
|
fprintf (stderr, "fmadm: not running on OS/2\n"); |
|
#endif |
|
|
printf ("\nFreeM Initial Configuration\n"); |
printf ("\nFreeM Initial Configuration\n"); |
printf ("---------------------------\n\n"); |
printf ("---------------------------\n\n"); |
|
|
printf ("This utility will create the initial configuration file for "); |
printf ("This utility will create the initial configuration file for "); |
printf ("FreeM environment '%s' in %s.\n\n", fma_environment, config_file); |
printf ("FreeM environment '%s' in %s.\n\n", fma_environment, config_file); |
|
|
|
|
/* check for existence of needed directories */ |
/* check for existence of needed directories */ |
if (stat (SYSCONFDIR, &etcstat) == -1) { |
if (stat (SYSCONFDIR, &etcstat) == -1) { |