This is a case study of how we created a web appliance project using both intellectual property and open source code without jeopardizing the intellectual property. (Please note: This will NOT explain or interpret open source license issues)
Issue 1 - Separate code in a one build environment If we inadvertently link our proprietary source code with GPL open source the proprietary source becomes public property.
Issue 2 - Release requirements to the customer Open source code must independently compile and be available to customers.
Solution 1 - Ensure safety of proprietary IP. We ensure licenses are present for all source files. We use a clean room build environment to identify all linked files. For each linked file, we identify all sources used and flag the link as illegal if it contains both proprietary source AND GPL source.
Solution 2 - Ensure source shipped to customers meets distribution requirements. We identify all open source used in the build. We then ensure all this source is present within the distribution to be given to the customer. We compile this open source and ensure the compilation proceeds without errors.