The mac os x install command has the following parameters (subset):
-C Copy the file. If the target file already exists and the files
are the same, then don't change the modification time of the tar-
get.
-c Copy the file. This is actually the default. The -c option is
only included for backwards compatibility.
-p Preserve the modification time. Copy the file, as if the -C
(compare and copy) option is specified, except if the target file
doesn't already exist or is different, then preserve the modifi-
cation time of the file.
-S Safe copy. Normally, install unlinks an existing target before
installing the new file. With the -S flag a temporary file is
used and then renamed to be the target. The reason this is safer
is that if the copy or rename fails, the existing target is left
untouched.
-s install exec's the command strip(1) to strip binaries so that
install can be portable over a large number of systems and binary
types.
-v Causes install to show when -C actually installs something.
So during the plib build (no plib src changes), we get:
Making install in util
/bin/sh ../../mkinstalldirs /Users/ima/Desktop/FlightGear/fgdev9.6/lib
/usr/bin/install -c -m 644 libplibul.a /Users/ima/Desktop/FlightGear/fgdev9.6/lib/libplibul.a
ranlib /Users/ima/Desktop/FlightGear/fgdev9.6/lib/libplibul.a
/bin/sh ../../mkinstalldirs /Users/ima/Desktop/FlightGear/fgdev9.6/include/plib
/usr/bin/install -c -m 644 ul.h /Users/ima/Desktop/FlightGear/fgdev9.6/include/plib/ul.h
/usr/bin/install -c -m 644 ulRTTI.h /Users/ima/Desktop/FlightGear/fgdev9.6/include/plib/ulRTTI.h
Making install in js
/bin/sh ../../mkinstalldirs /Users/ima/Desktop/FlightGear/fgdev9.6/lib
/usr/bin/install -c -m 644 libplibjs.a /Users/ima/Desktop/FlightGear/fgdev9.6/lib/libplibjs.a
ranlib /Users/ima/Desktop/FlightGear/fgdev9.6/lib/libplibjs.a
/bin/sh ../../mkinstalldirs /Users/ima/Desktop/FlightGear/fgdev9.6/include/plib
/usr/bin/install -c -m 644 js.h /Users/ima/Desktop/FlightGear/fgdev9.6/include/plib/js.h
The plib include (and lib and so forth) directory has been updated as shown below:
% ls -l include/plib total 984 -rw-r--r-- 1 ima staff 10370 21 Nov 02:05 fnt.h -rw-r--r-- 1 ima staff 3110 21 Nov 02:04 js.h -rw-r--r-- 1 ima staff 227 21 Nov 02:05 net.h -rw-r--r-- 1 ima staff 6464 21 Nov 02:05 netBuffer.h -rw-r--r-- 1 ima staff 3786 21 Nov 02:05 netChannel.h -rw-r--r-- 1 ima staff 2643 21 Nov 02:05 netChat.h -rw-r--r-- 1 ima staff 6652 21 Nov 02:05 netMessage.h -rw-r--r-- 1 ima staff 2579 21 Nov 02:05 netMonitor.h -rw-r--r-- 1 ima staff 2924 21 Nov 02:05 netSocket.hll --help -rw-r--r-- 1 ima staff 2602 21 Nov 02:05 pcx.h-g group] [-m mode] -rw-r--r-- 1 ima staff 7821 21 Nov 02:05 psl.h -rw-r--r-- 1 ima staff 63489 21 Nov 02:04 pu.h[-g group] [-m mode] -rw-r--r-- 1 ima staff 25544 21 Nov 02:04 puAux.h -rw-r--r-- 1 ima staff 44 21 Nov 02:04 puAuxLocal.hrectory ... -rw-r--r-- 1 ima staff 1830 21 Nov 02:04 puFLTK.hn install -rw-r--r-- 1 ima staff 1777 21 Nov 02:04 puGLUT.h -rw-r--r-- 1 ima staff 2428 21 Nov 02:04 puNative.h -rw-r--r-- 1 ima staff 1745 21 Nov 02:04 puPW.h -rw-r--r-- 1 ima staff 1478 21 Nov 02:04 puSDL.h -rw-r--r-- 1 ima staff 3834 21 Nov 02:05 pw.h -rw-r--r-- 1 ima staff 83371 21 Nov 02:04 sg.h -rw-r--r-- 1 ima staff 19332 21 Nov 02:04 sl.h -rw-r--r-- 1 ima staff 2382 21 Nov 02:04 slPortability.h -rw-r--r-- 1 ima staff 2859 21 Nov 02:04 sm.h -rw-r--r-- 1 ima staff 82135 21 Nov 02:05 ssg.h -rw-r--r-- 1 ima staff 2450 21 Nov 02:05 ssgAux.h -rw-r--r-- 1 ima staff 8401 21 Nov 02:05 ssgKeyFlier.h -rw-r--r-- 1 ima staff 1117 21 Nov 02:05 ssgMSFSPalette.h -rw-r--r-- 1 ima staff 7558 21 Nov 02:05 ssgaBillboards.h -rw-r--r-- 1 ima staff 2015 21 Nov 02:05 ssgaFire.h -rw-r--r-- 1 ima staff 1599 21 Nov 02:05 ssgaLensFlare.h -rw-r--r-- 1 ima staff 3228 21 Nov 02:05 ssgaParticleSystem.h -rw-r--r-- 1 ima staff 343 21 Nov 02:05 ssgaScreenDump.h -rw-r--r-- 1 ima staff 5971 21 Nov 02:05 ssgaShapes.h -rw-r--r-- 1 ima staff 10716 21 Nov 02:05 ssgaSky.h -rw-r--r-- 1 ima staff 1248 21 Nov 02:05 ssgaSphere.h -rw-r--r-- 1 ima staff 3603 21 Nov 02:05 ssgaWaveSystem.h -rw-r--r-- 1 ima staff 2044 21 Nov 02:05 ssgconf.h -rw-r--r-- 1 ima staff 16648 21 Nov 02:04 ul.h -rw-r--r-- 1 ima staff 12621 21 Nov 02:04 ulRTTI.h
(these files are newer, but unchanged, files created during the previous 'make install' process)
This forces a rebuild of simgear and (then) flightgear unnecessarily.
Question 1:
Should we be using '-C' instead of '-c' to not install new files to the install directories if in fact these files are no different from the ones currently there?
Question 2:
Does this problem only occur on mac os x or does it occur on other BSD variants also?
Question 3;
Where should this problem be fixed, is Apple's install buggy? Can I install a second install command that I'd only use during builds required during FG builds (and FG dependencies)? Could this be a change to how FlightGear (and dependencies) are installed during the build process?
Thank you!
Ima
_______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d