[m-dev.] [m-users.] Closed source Mercury projects on Windows

Mark Brown mark at mercurylang.org
Sat Jun 9 01:32:35 AEST 2018


Hi Julien,

On Wed, Jun 6, 2018 at 9:12 PM, Julien Fischer <jfischer at opturion.com> wrote:
>
> On Wed, 6 Jun 2018, Zoltan Somogyi wrote:
>
>>>
>>> IIRC, we only use that copy of getopt for systems that don't provide it.
>>
>>
>> I believe you are right. I am not sure, but I *think* I added that copy of
>> getopt
>> to the runtime for that purpose when I was providing scaffolding code for
>> projects to my students in whatever subject I was teaching at the time.
>> The scaffolding was the uninteresting part of the project's code, which
>> the students thus did not have to spend time to write. They thus did not
>> write it in umpteen weird and wonderful ways, which saved *me* time
>> when marking the projects.
>>
>> The department's machines always had GNU tools installed on them and
>> thus had getopt, but some students worked on projects at home (or at their
>> own workplace, if parttime), and some of *their* systems did not have
>> getopt.
>> So I included a copy of GNU getopt with the scaffolding code, and made it
>> a modified copy with renamed functions and global variables in the
>> interface,
>> so that it wouldn't clash with the standard copy of getopt if it *was*
>> installed
>> on a computer a student was using.
>>
>> That was twenty years ago. Now, we should just assume that the system
>> provides
>> getopt, and delete our copy. Unless someone knows of a current
>> Unix/Linux/BSD/???
>> system that still lives in the dark ages?
>
>
> I suspect the only user may be the MSVC port; my Windows machine is at
> work, so I can't check until tomorrow.  *If* we do need to include it
> then we can replace the GNU implementation with the NetBSD one.

Have you had a chance to look into this?

Is the plan to replace readline with editline, or should I try to
document in COPYING.LIB the need to configure without readline?

Mark


More information about the developers mailing list