Hi Bertrand,

Thanks for the comments. Some more details inline.

On Mon, Mar 5, 2018 at 1:45 PM, Bertrand Delacretaz <[email protected]>
wrote:

> Hi,
>
> On Mon, Mar 5, 2018 at 8:51 AM, Jan Lahoda <[email protected]> wrote:
> > ...-any experience with having native code in a release? The launchers
> have
> > several dependencies, like the "jni.h" from a Java distro (the DLL from
> the
> > Java distribution is used at runtime, I think), libgcc, libstdc++ (these
> > are linked statically, so that users don't need to have them as shared
> > libraries)....
>
> IIUC you're talking about platform-specific source code? As opposed to
> binaries.
>

What I have in mind are sources like:
https://github.com/apache/incubator-netbeans/blob/master/o.n.bootstrap/launcher/windows/jvmlauncher.cpp

Which are the base for a few Windows-specific files in the binary builds,
like:
platform/lib/nbexec64.dll


>
> If that's correct then I don't see a problem with that, I suppose the
> build will include the appropriate code depending on which platform
> it's building on?
>

Currently, the built big NetBeans (IDE) binaries can run on any platform,
regardless of the platform on which they were built. (In particular, a
build made on Linux can run on Windows.) I personally think this is a good
property that we should preserve. This is achieved by not compiling the
native launcher during the IDE build, but rather downloading them from a
binary server.


>
> > ...-are there any continuous build machines setup to do native builds?...
>
> https://builds.apache.org/
>
> points to
>
> https://cwiki.apache.org/confluence/display/INFRA/Jenkins+node+labels
>
> which lists "Windows" as a node label so it looks like there are
> Windows slaves for Jenkins.
>
> https://cwiki.apache.org/confluence/display/INFRA/Jenkins has more
> info and [email protected] is the place for questions - I don't know
> the details myself.
>

Thanks, I'll write there.

I was checking the node labels before, but they don't appear to say if any
of the nodes have a C/C++ toolchain. Actually, the C/C++ toolchain that can
target Windows is what's needed here, not an actual Window machine.


> > ...-how to incorporate the Windows binaries into the build...
>
> I suppose that's a question for people who are working on NetBeans, I'll
> pass.
>

My intent was more like a question on how to do it as an Apache project.
Originally, the binaries of the launchers where simply committed in the
repository (because there is just a handful of them, and their source is in
the repository):
http://hg.netbeans.org/jet-main/file/tip/o.n.bootstrap/launcher/windows

But in Apache, built stuff can't be in the source release, so these are
downloaded from the binary server:
https://github.com/apache/incubator-netbeans/blob/master/o.n.bootstrap/external/binaries-list
https://github.com/apache/incubator-netbeans/blob/master/o.n.bootstrap/external/platform-launchers-8.2-license.txt

Question is, if this can be done better.

Thanks,
     Jan



>
> -Bertrand
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
> For further information about the NetBeans mailing lists, visit:
> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
>
>
>
>

Reply via email to