Has CMAKE been considered ? CMAKE should work equally well on windows(visual studio and Cygwin) and linux. You can create a new build system around CMAKE while keeping the current Makefile system alive, and deprecate it later, once the CMAKE based build system is stable.
-Raghu
On Dec 13, 2018, at 04:00 AM, tf-a-request@lists.trustedfirmware.org wrote:
Send TF-A mailing list submissions to tf-a@lists.trustedfirmware.org
To subscribe or unsubscribe via the World Wide Web, visit https://lists.trustedfirmware.org/mailman/listinfo/tf-a or, via email, send a message with subject or body 'help' to tf-a-request@lists.trustedfirmware.org
You can reach the person managing the list at tf-a-owner@lists.trustedfirmware.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of TF-A digest..."
Today's Topics:
1. New build system based on Kconfig/Kbuild (Antonio Nino Diaz) 2. Re: New build system based on Kconfig/Kbuild (Antonio Nino Diaz)
----------------------------------------------------------------------
Message: 1 Date: Wed, 12 Dec 2018 15:50:15 +0000 From: Antonio Nino Diaz Antonio.NinoDiaz@arm.com To: "tf-a@lists.trustedfirmware.org" tf-a@lists.trustedfirmware.org Subject: [Tf-a] New build system based on Kconfig/Kbuild Message-ID: DB6PR0801MB1943C8DAE7D0574D1C6E15BD89A70@DB6PR0801MB1943.eurprd08.prod.outlook.com Content-Type: text/plain; charset="iso-8859-1"
Hello,
One of the biggest issues that the current codebase of TF-A has is the build system. It is unfit for the amount of options and dependencies of said options, and adding new features is now an effort of trying to add the new feature while not breaking the rest of the code.
There is another problem. When the firmware is compiled with, say, OPTION=1, if it is recompiled with OPTION=0 without cleaning first, nothing will be rebuilt.
We have had several discussions about this internally and we have decided to migrate to Kbuild/Kconfig, the build system used by the Linux kernel. There are already some projects using it, like U-Boot or Zephyr RTOS.
We are starting the work related to this migration, and our intention is to migrate upstream platforms to this new build system.
However, this change means that: - All non-upstream platforms will break until they update their makefiles. - Compilation under Windows won't be possible anymore without Cygwin or MinGW.
We're open to comments.
Regards, Antonio
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
------------------------------
Message: 2 Date: Wed, 12 Dec 2018 15:54:30 +0000 From: Antonio Nino Diaz Antonio.NinoDiaz@arm.com To: Antonio Nino Diaz Antonio.NinoDiaz@arm.com, "tf-a@lists.trustedfirmware.org" tf-a@lists.trustedfirmware.org Cc: nd nd@arm.com Subject: Re: [Tf-a] New build system based on Kconfig/Kbuild Message-ID: DB6PR0801MB1943F0BC699C1B37A8787C2889A70@DB6PR0801MB1943.eurprd08.prod.outlook.com Content-Type: text/plain; charset="us-ascii"
Please, ignore the confidentiality notice.
________________________________ From: TF-A tf-a-bounces@lists.trustedfirmware.org on behalf of Antonio Nino Diaz via TF-A tf-a@lists.trustedfirmware.org Sent: 12 December 2018 15:50:24 To: tf-a@lists.trustedfirmware.org Subject: [Tf-a] New build system based on Kconfig/Kbuild
Hello,
One of the biggest issues that the current codebase of TF-A has is the build system. It is unfit for the amount of options and dependencies of said options, and adding new features is now an effort of trying to add the new feature while not breaking the rest of the code.
There is another problem. When the firmware is compiled with, say, OPTION=1, if it is recompiled with OPTION=0 without cleaning first, nothing will be rebuilt.
We have had several discussions about this internally and we have decided to migrate to Kbuild/Kconfig, the build system used by the Linux kernel. There are already some projects using it, like U-Boot or Zephyr RTOS.
We are starting the work related to this migration, and our intention is to migrate upstream platforms to this new build system.
However, this change means that: - All non-upstream platforms will break until they update their makefiles. - Compilation under Windows won't be possible anymore without Cygwin or MinGW.
We're open to comments.
Regards, Antonio
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. -- TF-A mailing list TF-A@lists.trustedfirmware.org https://lists.trustedfirmware.org/mailman/listinfo/tf-a
------------------------------
Subject: Digest Footer
TF-A mailing list TF-A@lists.trustedfirmware.org https://lists.trustedfirmware.org/mailman/listinfo/tf-a
------------------------------
End of TF-A Digest, Vol 1, Issue 1 **********************************
tf-a@lists.trustedfirmware.org