No sé si esto afecta a las versiones de macOS más recientes que High Sierra, pero parece que cp -p
no conservará las marcas de tiempo con resolución de nanosegundos.
Debido a esto, el shell puede decir erróneamente que un archivo es más antiguo que otro aunque haya sido copiado por cp -p
. Esto rompe las dependencias del sistema de construcción cuando algunos archivos fueron instalados por cp -p
: siguen reinstalando y reinstalando de nuevo porque los nanosegundos no coinciden.
¿Puede sugerir alguna solución para esto? Pensé en compilar mi propio cp
binario, pero sin embargo cp
suele ser un shell builtin, y además no conozco ningún nanosegundo que preserve cp
versión que existe.
Nota: Conozco una solución, pero no es razonable: Ejecutar touch
en el archivo fuente antes de ejecutar cp -p
. Porque touch
tampoco conserva los nanosegundos, los pone a cero en el archivo fuente, por lo que el resultado después de cp -p
garantiza exactamente la misma marca de tiempo. Sin embargo, como he dicho, no es razonable, porque no me gusta touch
archivos sólo por esto: se pierde su última fecha real de guardado.