假设有一个包含一些my_lib.c和my_lib.h的库
这是一个具有数千用户的开源标准库。但是,对于我的项目,我需要将该库用于两个不同的设备。其中一台设备可以按原样使用该库,但是另一台设备需要修改该库的读/写功能,并用my_read()和my_write()函数替换它们。
当前,我在项目中包括该库的两个不同版本,一个是原始版本,另一个是修改版本。但是,这意味着项目中有许多代码重复,代码大小增加以及社区不接受。
如何以最佳方式解决此设计问题?
有关更多详细信息,请参见
它不是一个库,它是linux Common Clock Framework,用于同时控制两个不同SOC的时钟,一个是主机(其时钟操作可以使用正常的readl / writel),另一个是通过pcie连接的从属设备(其时钟需要我们已实现的映射的pcie_read / pcie_write)。