I would recommend using Unix lines for both clients.
Unix line endings, despite the name, will tell the perforce client not to change line endings when files are synchronized with the source data. With this set on both clients, if you create a file on Windows and synchronize it with Unix, it will still have linear Windows endings, but it should not be a problem on Unix, and perforce will not remove / add characters, resulting in ^ M.
One of the small drawbacks is that Windows computers will require Unix utilities with string support such as Notepad ++, but this doesn't seem to be a problem.
In our team environment, where Unix, Mac, and Windows are used in the same warehouse, all our clients are forced to restrict the Unix line to a simple single-line trigger on the [Unix] server, so that no one encounters this problem (it also causes submitunchanged and rmdir but you can take them off):
clientspec form-in client "sed -i -es/LineEnd.*/LineEnd:unix/ -es/submitunchanged/revertunchanged/ -es/normdir/rmdir/ %formfile%"
Craig
source share