Are you sure you need to preserve the order? Exactly what do you intend to do with the unique list?
If you really need the order preserved, without testing it, try something like:
unique = $(if $(1),$(call unique,$(wordlist 2,$(words $(1)),$(1)),$(if $(filter $(firstword $(1)),$(2)),$(2),$(firstword $(1)) $(2))),$(2))
Noel
J.Davison de St.Germain wrote:
Hi,
I need to be able to take a list of directories and remove the duplicates without sorting the list. For example, if I have "-L/abc/lib -L/def/lib -L/abc/lib" I would like to get back "-L/abc/lib -L/def/lib". I would like to do this within make so that I don't have to call a bunch of shell functions. I've talked to a number of other gmake makefile writers and they agree that this would be very helpful. Is there such a function in make? (Like $(unique list) or some such?) If not, has someone well versed in functional programming put together a bunch of filter/foreach/search/etc functions to do this? Any help on this would be greatly appreciated. Also, if you know of a better location to send this request to, please let me know.
Sincerely, J. Davison de St. Germain
PS. My search of the mailing list archive only gave me one hit and that was to use sort. As I mention above, I need the list to stay in the same order. Thanks!
----------------------------------------------------------------------- - J. Davison de St. Germain [EMAIL PROTECTED] (801) 581-4078 - - Chief Software Engineer http://www.cs.utah.edu/~dav - - SCI Institute, SE C-SAFE University of Utah - -----------------------------------------------------------------------
_______________________________________________ Help-make mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/help-make
_______________________________________________ Help-make mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/help-make
