[ovs-dev] [PATCH V6 1/2] Makefiles: Generate datapath ovs key fields macros

Roi Dayan roid at mellanox.com
Tue Mar 19 08:05:18 UTC 2019



On 19/03/2019 09:42, Ilya Maximets wrote:
>> On 18/03/2019 23:58, Ben Pfaff wrote:
>>> On Sun, Mar 10, 2019 at 05:31:31AM +0000, Eli Britstein wrote:
>>>> Generate datapath ovs key fields offset and size array macros as a
>>>> pre-step for bit-wise comparing fields, with no functional change.
>>>>
>>>> Signed-off-by: Eli Britstein <elibr at mellanox.com>
>>>> Reviewed-by: Roi Dayan <roid at mellanox.com>
>>>
>>> Thanks!
>>>
>>> This introduces a script that uses /bin/bash.  I don't think that we
>>> have other build or runtime  dependencies on bash, so it would be better
>>> to avoid introducing one here.  I would rewrite it in terms of portable
>>> Bourne shell constructs.
>>>
>>
>> Hi Ben,
>>
>> just to clarify, when you see portable Bourne shell constructs,
>> you mean so it can work with other shells like dash on ubuntu?
>>
>> There are other scripts depending on bash.
>> examples are tests in tests/system-traffic.at, the bash auto completion scripts, ovs-sim.
>> do you still prefer us to be compatible and use /bin/sh shebang ?
>>
>> Thanks,
>> Roi
> 
> Hi.
> 
> At least this patch set breaks the FreeBSD build:
> 
> mv ovn/lib/ovn-nb-idl.ovsidl.tmp ovn/lib/ovn-nb-idl.ovsidl
> bash -f ./build-aux/extract-odp-netlink-macros-h include/odp-netlink.h > include/odp-netlink-macros.h
> /bin/sh: bash: not found
> gmake: *** [Makefile:8327: include/odp-netlink-macros.h] Error 127
> gmake: *** Waiting for unfinished jobs....
> Exit status: 2
> 
> More details here: https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcirrus-ci.com%2Ftask%2F5827199230803968&amp;data=02%7C01%7Croid%40mellanox.com%7Ce5343a3f2e594a860d1b08d6ac3e71d7%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C636885781524519796&amp;sdata=Kx6JXs5FKFeL6TgzzB8cNE9UnC%2B%2BK7OnFpiImgB6apI%3D&amp;reserved=0
> 
> BTW, all the code parts you mentioned that depends on bash are not part of the
> build or base test system. tests/system-traffic.at depends on Linux and is not
> part of a base testsuite, bash auto completion scripts are obviously bash dependant
> and not used without bash (autocompletion tests are skipped if bash is not available),
> and ovs-sim is just a developer tool that intended for manual testing so not that
> important.
> But your code makes generic build process bash dependent. This causes build failure
> on FreeBSD and possibly on other systems without bash available.
> 
> Best regards, Ilya Maximets.
> 

thanks Ilya, we'll do the changes needed.



More information about the dev mailing list