Re: CMake 4

Roland Hughes via Foxgui-users <[email protected]> Fri, 2 Jan 2026 12:12:06 -0600
Newsgroups gmane.comp.lib.fox-toolkit.user
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--===============3749596683665973142==
Content-Type: multipart/alternative;
 boundary="------------mWYV3q0GUVVYl07pj2TH0aYb"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------mWYV3q0GUVVYl07pj2TH0aYb
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit


On 1/2/2026 11:05 AM, Sander Jansen wrote:
> I still don't get it. Assuming you have 3.27, why can't you set the 
> minimum required version in FOX to 3.23?
>
> > But, if you want to still support Ubuntu 18.04 (Some development 
> locked there) your min needs to be 3.10
>
> I don't see the point. If you insist on running a 7 year old OS for 
> stability reasons, why would you want the latest version of a library. 
> Just download 1.6 or whatever was released 7 years ago. Also there 
> seems to be some sort of double standard, YES on downloading the 
> bleeding edge of FOX and NO on downloading the latest cmake.

Well, this goes back to my original chiming in and the fact I live in a 
different world.

*What is the oldest OS you are looking to support with this release?*

I didn't see an answer for that. The documentation on the official Web 
site lists a bunch of really ancient operating systems, but not which 
versions you need.

If you want to support Ubuntu 18.04 then the minimum CMake version needs 
to be what comes with those repos. If you have customers/users running 
older operating systems, you need to use their version.

The doc on the web site needs to segregate archaic OSes that only work 
with very old (possibly no longer available) versions of FOX from 
"minimum OS today's version needs." It's confusing to people.

*As to the 7 year old OS*

It's not so much stability as legal requirement. I live in the FDA 510K 
regulated world of medical devices. Every few years I get a phone call 
or email (usually both) from this Indian consulting firm named Harman to 
work on some kind of cardiac device. All work must be done on-site (I 
think the place is in Iowa, never went) because you must use the 
gingerly maintained development system. OS/2 compiling Qt3. As I said, I 
never took the contract because they also want it done for absolutely no 
money.

When I was working on this device <https://www.kneevoice.com> not long 
ago, we looked at Fox as one of the possible libraries. The end client 
had never created a medical device, they wanted sexy, so they used one 
of other libraries I evaluated. They also haven't gotten through the 
510K process last I heard. I tried to explain to them how wretched the 
Medtronic base unit for pacemaker control is, but they would have none 
of it. For board verification software, we needed serial and audio i/o 
with almost no GUI, so I went with NanoGUI because it was tiny and 
wouldn't get in the way of the other two.

When we build a medical device there are several detailed documents that 
must be created. One lists the file size, version, and location of every 
binary on the device. The other is a document third party testing must 
be able to re-create the development environment from. When they get 
done, the binary versions of everything must match before they begin 
testing.

Most places are now using Oracle Virtual Box VM that is configured to be 
disconnected from the source repos and Internet because someone 
installing their favorite IDE or whatever can pooch this. First time 
through there is no avoiding a full 510K process using multiple external 
testing firms approved by the FDA. It is time consuming and expensive. 
For something like a surgical robot it can consume 5-7 years. Once you 
get through it, you can't change anything in the Dev world.

/Source code doesn't count/

As long as it is a library you build from source and contain within your 
own code repository you can qualify for "minor enhancement" approval 
pass if you:

 1. Perform full static analysis of said code
 2. Have a formal code review for every module/change with formal diffs
    that you archive in your Design History File.
 3. Perform full in-house QA validation of the new device once it comes
    off your existing FDA approved manufacturing line.

For some lower risk devices you just send that documentation to the FDA 
and you get approved a short time later.

If the binaries of your Dev environment don't match what you originally 
filed . . . fugedaboutit

It's not just FDA stuff. I worked at a client site that develops 
control/operation systems for hog barns. They are also still on Ubuntu 
18.04 last I heard. There are some similar regulations for systems 
responsible for animal welfare.

We exist in worlds where you are locked in, for good reason, to a Dev 
environment so results are 100% reproducible.

When it comes to GUI libraries, there can be compelling bug fixes or new 
features that justify bringing in the new library when working on an 
enhancement or fix. You are stopped cold if the Dev environment has to 
change though. Must be a product generating oceans of revenue to justify 
going through a more involved 510K process.

Sorry for the length, but there is no short explanation.

-- 
Roland Hughes, President
Logikal Solutions
(630)-205-1593  (cell)
https://theminimumyouneedtoknow.com
https://infiniteexposure.net
https://johnsmith-book.com

--------------mWYV3q0GUVVYl07pj2TH0aYb
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 1/2/2026 11:05 AM, Sander Jansen
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CACj81kFBtL-0J3DY5Sn+s+f_qQN5ASQs4Doo7fQjq7Y1EVdkkA@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div>I still don't get it. Assuming you have 3.27, why can't you
          set the minimum required version in FOX to 3.23?<br>
          <br>
          &gt; But, if you want to still support Ubuntu 18.04 (Some
          development locked there) your min needs to be 3.10<br>
          <br>
        </div>
        I don't see the point. If you insist on running a 7 year old OS
        for stability reasons, why would you want the latest version of
        a library. Just download 1.6 or whatever was released 7 years
        ago. Also there seems to be some sort of double standard, YES on
        downloading the bleeding edge of FOX and NO on downloading the
        latest cmake.</div>
    </blockquote>
    <p>Well, this goes back to my original chiming in and the fact I
      live in a different world.</p>
    <p><b>What is the oldest OS you are looking to support with this
        release?</b></p>
    <p>I didn't see an answer for that. The documentation on the
      official Web site lists a bunch of really ancient operating
      systems, but not which versions you need. <br>
    </p>
    <p>If you want to support Ubuntu 18.04 then the minimum CMake
      version needs to be what comes with those repos. If you have
      customers/users running older operating systems, you need to use
      their version.</p>
    <p>The doc on the web site needs to segregate archaic OSes that only
      work with very old (possibly no longer available) versions of FOX
      from "minimum OS today's version needs." It's confusing to people.</p>
    <p><b>As to the 7 year old OS</b></p>
    <p>It's not so much stability as legal requirement. I live in the
      FDA 510K regulated world of medical devices. Every few years I get
      a phone call or email (usually both) from this Indian consulting
      firm named Harman to work on some kind of cardiac device. All work
      must be done on-site (I think the place is in Iowa, never went)
      because you must use the gingerly maintained development system. 
      OS/2 compiling Qt3. As I said, I never took the contract because
      they also want it done for absolutely no money.</p>
    <p>When I was working on <a href="https://www.kneevoice.com">this
        device</a> not long ago, we looked at Fox as one of the possible
      libraries. The end client had never created a medical device, they
      wanted sexy, so they used one of other libraries I evaluated. They
      also haven't gotten through the 510K process last I heard. I tried
      to explain to them how wretched the Medtronic base unit for
      pacemaker control is, but they would have none of it. For board
      verification software, we needed serial and audio i/o with almost
      no GUI, so I went with NanoGUI because it was tiny and wouldn't
      get in the way of the other two.</p>
    <p>When we build a medical device there are several detailed
      documents that must be created. One lists the file size, version,
      and location of every binary on the device. The other is a
      document third party testing must be able to re-create the
      development environment from. When they get done, the binary
      versions of everything must match before they begin testing.</p>
    <p>Most places are now using Oracle Virtual Box VM that is
      configured to be disconnected from the source repos and Internet
      because someone installing their favorite IDE or whatever can
      pooch this. First time through there is no avoiding a full 510K
      process using multiple external testing firms approved by the FDA.
      It is time consuming and expensive. For something like a surgical
      robot it can consume 5-7 years. Once you get through it, you can't
      change anything in the Dev world.</p>
    <p><i>Source code doesn't count</i></p>
    <p>As long as it is a library you build from source and contain
      within your own code repository you can qualify for "minor
      enhancement" approval pass if you:</p>
    <ol>
      <li>Perform full static analysis of said code</li>
      <li>Have a formal code review for every module/change with formal
        diffs that you archive in your Design History File.</li>
      <li>Perform full in-house QA validation of the new device once it
        comes off your existing FDA approved manufacturing line.</li>
    </ol>
    <p>For some lower risk devices you just send that documentation to
      the FDA and you get approved a short time later.</p>
    <p>If the binaries of your Dev environment don't match what you
      originally filed . . . fugedaboutit</p>
    <p>It's not just FDA stuff. I worked at a client site that develops
      control/operation systems for hog barns. They are also still on
      Ubuntu 18.04 last I heard. There are some similar regulations for
      systems responsible for animal welfare. <br>
    </p>
    <p>We exist in worlds where you are locked in, for good reason, to a
      Dev environment so results are 100% reproducible. <br>
    </p>
    <p>When it comes to GUI libraries, there can be compelling bug fixes
      or new features that justify bringing in the new library when
      working on an enhancement or fix. You are stopped cold if the Dev
      environment has to change though. Must be a product generating
      oceans of revenue to justify going through a more involved 510K
      process.</p>
    <p>Sorry for the length, but there is no short explanation. <br>
    </p>
    <pre class="moz-signature" cols="72">-- 
Roland Hughes, President
Logikal Solutions
(630)-205-1593  (cell)
<a class="moz-txt-link-freetext" href="https://theminimumyouneedtoknow.com">https://theminimumyouneedtoknow.com</a>
<a class="moz-txt-link-freetext" href="https://infiniteexposure.net">https://infiniteexposure.net</a>
<a class="moz-txt-link-freetext" href="https://johnsmith-book.com">https://johnsmith-book.com</a></pre>
  </body>
</html>

--------------mWYV3q0GUVVYl07pj2TH0aYb--


--===============3749596683665973142==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============3749596683665973142==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Foxgui-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/foxgui-users

--===============3749596683665973142==--