[SERVER-38289] Teach SCons about .idl files Created: 28/Nov/18  Updated: 29/Oct/23  Resolved: 22/Oct/20

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 4.9.0, 4.4.2

Type: New Feature Priority: Major - P3
Reporter: Sara Golemon Assignee: Daniel Moody
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Backwards Compatibility: Fully Compatible
Backport Requested:
v4.4
Sprint: Dev Platform 2020-11-02
Participants:

 Description   

Currently, building IDL targets requires invoking a bit of python code in the sources list to generate the c++ sources.  For example:

 

env.Library(
    target='some_library',
    source=[
        'foo.cpp',
        env.Idlc('bar.idl')[0],
    ],
)

The env.Idlc() invocation creates the generated c++ source and header files and SCons ultimately sees:

env.Library(
    target='some_library',
    source=[
        'foo.cpp',
        'bar_gen.cpp',
    ],
)

It would be a small, but repeated quality of life improvement to teach SCons about .idl files explicitly so that source lists could be written more simply and readably as:

env.Library(
    target='some_library',
    source=[
        'foo.cpp',
        'bar.idl',
    ],
)



 Comments   
Comment by Githook User [ 22/Oct/20 ]

Author:

{'name': 'Daniel Moody', 'email': 'daniel.moody@mongodb.com', 'username': 'dmoody256'}

Message: SERVER-38289 Teach objects builders how to build idl files.

(cherry picked from commit 298d4d6bbb9980b74bded06241067fe6771bef68)
Branch: v4.4
https://github.com/mongodb/mongo/commit/47ed9285087dc58cab303fe606f35ab7d0928b7d

Comment by Githook User [ 22/Oct/20 ]

Author:

{'name': 'Daniel Moody', 'email': 'daniel.moody@mongodb.com', 'username': 'dmoody256'}

Message: SERVER-38289 Teach objects builders how to build idl files.

(cherry picked from commit 4da9091c16dd7e61568379b0f9237ba84a66c65b)
Branch: v4.4
https://github.com/10gen/mongo-enterprise-modules/commit/e73785e6650a4562b7d2e01eb96ec09da52f12a3

Comment by Githook User [ 22/Oct/20 ]

Author:

{'name': 'Daniel Moody', 'email': 'daniel.moody@mongodb.com', 'username': 'dmoody256'}

Message: SERVER-38289 Teach objects builders how to build idl files.
Branch: master
https://github.com/mongodb/mongo/commit/298d4d6bbb9980b74bded06241067fe6771bef68

Comment by Githook User [ 22/Oct/20 ]

Author:

{'name': 'Daniel Moody', 'email': 'daniel.moody@mongodb.com', 'username': 'dmoody256'}

Message: SERVER-38289 Teach objects builders how to build idl files.
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/4da9091c16dd7e61568379b0f9237ba84a66c65b

Generated at Thu Feb 08 04:48:31 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.