So I did some digging and I found that '_' is actually an invalid character for fedora as well. See this link:
Actually, that page says the following:
When naming packages for Fedora, the maintainer must use the dash '-' as the delimiter for name parts. The maintainer must NOT use an underscore '_', a plus '+', or a period '.' as a delimiter.
We are not using underscores in the name parts, i.e. the Name field. Underscores are only used in the Version.
But yes, it looks like we'll need to work something out for dpkg systems.
The main reason that we use underscores in the version is because Lustre currently has a variable number of version fields, which makes it difficult to tell the delineation between the upstream version and the following part of the version, whether third-party or development (git describe) information.
We can't use a dash (-) in the version string on rpm systems. That pretty much leaves a period as the only other sane option if we decide to stop using underscores.
But maybe we stick with underscores on rpm systems, and munge the string in some acceptable way for dpkg?
Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/18108/
Subject:
LU-7699build: Eliminate lustre_build_version.hProject: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 9c710162e5acebd860f1d3f0e1bf204ac1ba98c1