1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-03-09 15:50:02 +00:00

Remove Microsoft/Cygwin import/export nonsense

Windows/Cygwin requires onerous special handling and the definition
of additional _imp__* symbols to import/export symbols between
dynamically linked binaries. Its support in AST used a lot of
macros and code obfuscation. In the features/common test for this,
AT&T called this the "Microsoft import/export nonsense".

They're right, it's nonsense. Somehow, Microsoft's POSIX layer,
SFU/Interix, always managed without it. No one has time to maintain
this (especially considering how incredibly sluggish Cygwin is).
And in fact, it had already fallen victim to bit rot; I confirmed
this in my early experiments with reintroducing dynamic library
support. No one has time to fix it, either.

So, my apologies to any Cygwin fans; ksh 93u+m will never support
dynamically loadable built-ins on Cygwin, even when I do manage to
reintroduce dynamic linking properly.
This commit is contained in:
Martijn Dekker 2022-07-21 18:26:42 +02:00
parent 4c0df0e617
commit 3de4da5afb
143 changed files with 125 additions and 1083 deletions

View file

@ -212,9 +212,6 @@ union Shnode_u
extern void sh_freeup(void);
extern void sh_funstaks(struct slnod*,int);
extern Sfio_t *sh_subshell(Shnode_t*, volatile int, int);
#if defined(__EXPORT__) && defined(_BLD_DLL)
__EXPORT__
#endif
extern int sh_tdump(Sfio_t*, const Shnode_t*);
extern Shnode_t *sh_trestore(Sfio_t*);