2 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
3 # Use is subject to license terms.
9 NPROG
= $(NATIVE
)/$(PROG
)
11 # "etcetera" must be listed before "backward" because it sets up links that
13 TZFILES
= africa antarctica asia australasia etcetera europe \
14 factory northamerica pacificnew solar87 solar88 solar89 \
16 # Don't build the systemv timezones, but do install the source file.
17 SRCFILES
= $(TZFILES
) systemv README
18 TABFILES
= continent.tab country.tab zone_sun.tab
20 OBJS
= zic.o scheck.o ialloc.o
22 NOBJS
= $(OBJS
:%=$(NATIVE
)/%)
24 CLOBBERFILES
= $(NOBJS
) $(KSHPROG
) $(NPROG
) $(NATIVE
)/zic.c
$(NATIVE
)/tzfile.h
26 include ..
/Makefile.cmd
28 NCPPFLAGS
= -I
$(NATIVE
)
29 ROOTTZD
= $(ROOTSHLIB
)/zoneinfo
30 ROOTTZSRCD
= $(ROOTSHLIB
)/zoneinfo
/src
31 ROOTTZTABD
= $(ROOTSHLIB
)/zoneinfo
/tab
32 DIRS
= $(ROOTTZSRCD
) $(ROOTTZTABD
)
34 CERRWARN
+= -_gcc
=-Wno-unused-variable
35 CERRWARN
+= -_gcc
=-Wno-uninitialized
37 ROOTLIBTZSRCFILES
= $(SRCFILES
:%=$(ROOTTZSRCD
)/%)
38 ROOTLIBTZTABFILES
= $(TABFILES
:%=$(ROOTTZTABD
)/%)
39 ROOTKSHPROG
= $(ROOTBIN
)/$(KSHPROG
)
41 $(ROOTLIBTZSRCFILES
):= FILEMODE
= 0644
42 $(ROOTLIBTZTABFILES
):= FILEMODE
= 0644
50 TEXT_DOMAIN2
=SUNW_OST_ZONEINFO
51 MSGDOMAIN2
=$(MSGROOT
)/$(TEXT_DOMAIN2
)
53 # NB: $(POFILE2) is under SCM.
54 CLOBBERFILES
+= $(POFILE
) $(POFILE3
)
58 all: $(PROG
) $(NPROG
) $(KSHPROG
)
61 $(LINK.c
) $(OBJS
) -o
$@
$(LDLIBS
)
64 install: all $(DIRS
) $(ROOTTZSRCD
) $(ROOTTZTABD
) $(ROOTUSRSBINPROG
) \
65 $(ROOTLIBTZSRCFILES
) $(ROOTLIBTZTABFILES
) $(ROOTKSHPROG
)
66 $(NPROG
) -d
$(ROOTTZD
) $(TZFILES
)
68 $(NPROG
): $(NATIVE
) $(NOBJS
)
69 $(NATIVECC
) $(NATIVE_CFLAGS
) -o
$@
$(NOBJS
)
73 # There is a .ksh rule in Makefile.targ, but we need our custom POFILE rules.
75 $(KSHPROG
): $(KSHPROG
).ksh
77 $(CAT
) $(KSHPROG
).ksh
> $@
97 $(NOBJS
): $$(@F
:.o
=.c
)
98 $(NATIVECC
) -O
$(NATIVE_CFLAGS
) $(NCPPFLAGS
) -c
-o
$@
$(@F
:.o
=.c
)
100 $(NATIVE
)/zic.o
: $(NATIVE
)/tzfile.h
102 $(NATIVE
)/tzfile.h
: $(ROOT
)/usr
/include/tzfile.h
103 $(RM
) $@
; cp
$(ROOT
)/usr
/include/tzfile.h
$@
106 # From ../Makefile.targ
109 -$(RM
) $(PROG
) $(CLOBBERFILES
)
112 $(LINT.c
) $(PROG
).c
$(LDLIBS
)
115 $(LINT.c
) $(SRCS
) $(LDLIBS
)
118 # For message catalogue files
120 _msg
: $(MSGDOMAIN
) $(POFILE
) $(POFILE2
) $(MSGDOMAIN2
) $(POFILE3
)
121 $(RM
) $(MSGDOMAIN
)/$(POFILE
)
122 $(CP
) $(POFILE
) $(MSGDOMAIN
)
123 $(RM
) $(MSGDOMAIN
)/$(POFILE2
)
124 $(CP
) $(POFILE2
) $(MSGDOMAIN
)
125 $(RM
) $(MSGDOMAIN2
)/$(POFILE3
)
126 $(CP
) $(POFILE3
) $(MSGDOMAIN2
)/$(POFILE3
)
128 $(MSGDOMAIN
) $(DCMSGDOMAIN
) $(MSGDOMAIN2
):
131 $(POFILE3
): $(POFILES3
)
133 @
/bin
/sh .
/do_pofile.sh
> $@