summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu/icu-xetex/config/mh-cygwin
blob: aa58e0e96118865b170bf555b2900a1c270dd2aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
## -*-makefile-*-
## Cygwin-specific setup
## Copyright (c) 2001-2006, International Business Machines Corporation and
## others. All Rights Reserved.

## Commands to generate dependency files
GEN_DEPS.c=	$(CC) -E -MM $(DEFS) $(CPPFLAGS)
GEN_DEPS.cc=	$(CXX) -E -MM $(DEFS) $(CPPFLAGS)

## Flags to create/use a static library
ifneq ($(ENABLE_SHARED),YES)
## Make sure that the static libraries can be built and used
CPPFLAGS += -DU_STATIC_IMPLEMENTATION
else
## Make sure that the static libraries can be built
STATICCPPFLAGS = -DU_STATIC_IMPLEMENTATION
endif

## Flags for position independent code
SHAREDLIBCFLAGS = 
SHAREDLIBCXXFLAGS = 
SHAREDLIBCPPFLAGS = -DPIC

## Additional flags when building libraries and with threads
THREADSCPPFLAGS = -D_REENTRANT
LIBCPPFLAGS =

# Commands to link. Link with C++ in case static libraries are used.
LINK.c=       $(CXX) $(CXXFLAGS) $(LDFLAGS)
#LINK.cc=      $(CXX) $(CXXFLAGS) $(LDFLAGS)

## Commands to make a shared library
SHLIB.c=	$(CC) $(CFLAGS) $(LDFLAGS) -shared
SHLIB.cc=	$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared

## Compiler switch to embed a runtime search path
LD_RPATH=	
LD_RPATH_PRE=	-Wl,-rpath,

## Compiler switch to embed a library name
LD_SONAME =

## Shared object suffix
SO = dll
## Non-shared intermediate object suffix
STATIC_O = ao
LIBICU = cyg$(ICUPREFIX)

# Change the stubnames so that poorly working FAT disks and installation programs can work.
# This is also for backwards compatibility.
DATA_STUBNAME = dt
I18N_STUBNAME = in

## Compilation rules
%.$(STATIC_O): $(srcdir)/%.c
	$(COMPILE.c) $(STATICCPPFLAGS) $(STATICCFLAGS) -o $@ $<
%.o: $(srcdir)/%.c
	$(COMPILE.c) $(DYNAMICCPPFLAGS) $(DYNAMICCFLAGS) -o $@ $<

%.$(STATIC_O): $(srcdir)/%.cpp
	$(COMPILE.cc) $(STATICCPPFLAGS) $(STATICCXXFLAGS) -o $@ $<
%.o: $(srcdir)/%.cpp
	$(COMPILE.cc) $(DYNAMICCPPFLAGS) $(DYNAMICCXXFLAGS) -o $@ $<


## Dependency rules
%.d: $(srcdir)/%.c
	@echo "generating dependency information for $<"
	@echo -n "$@ " > $@
	@$(GEN_DEPS.c) $< >> $@ || (rm -f $@ && FALSE)

%.d: $(srcdir)/%.cpp
	@echo "generating dependency information for $<"
	@echo -n "$@ " > $@
	@$(GEN_DEPS.cc) $< >> $@ || (rm -f $@ && FALSE)

## Versioned target for a shared library.
## Since symbolic links don't work the same way on Windows,
## we only use the version major number.
#FINAL_SO_TARGET=$(basename $(SO_TARGET))$(SO_TARGET_VERSION).$(SO)
FINAL_SO_TARGET=$(basename $(SO_TARGET))$(SO_TARGET_VERSION_MAJOR).$(SO)
MIDDLE_SO_TARGET=$(FINAL_SO_TARGET)

# The following is for Makefile.inc's use.
ICULIBSUFFIX_VERSION = $(LIB_VERSION_MAJOR)

## Versioned libraries rules
#%$(SO_TARGET_VERSION_MAJOR).$(SO): %$(SO_TARGET_VERSION).$(SO)
#	$(RM) $@ && cp ${<F} $@
%.$(SO): %$(SO_TARGET_VERSION_MAJOR).$(SO)
	$(RM) $@ && ln -s ${<F} $@

## Install libraries as executable
INSTALL-L=$(INSTALL_PROGRAM)

##  Bind internal references

# LDflags that pkgdata will use
BIR_LDFLAGS= -Wl,-Bsymbolic

# Dependencies [i.e. map files] for the final library
BIR_DEPS=

# Environment variable to set a runtime search path
LDLIBRARYPATH_ENVVAR = PATH

# The type of assembly to write for generating an object file
GENCCODE_ASSEMBLY=-a gcc-cygwin

# put this here again so it gets cyguc...

#SH#ICULIBS_COMMON_LIB_NAME="${LIBICU}uc${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO}"

# for icu-config

#SH### copied from Makefile.inc
#SH#ICULIBS_COMMON="-l${LIBICU}uc${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_DATA="-l${LIBICU}${DATA_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_I18N="-l${LIBICU}${I18N_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_TOOLUTIL="-l${LIBICU}tu${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_CTESTFW="-l${LIBICU}ctestfw${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_ICUIO="-l${LIBICU}io${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_OBSOLETE="-l${LIBICU}obsolete${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_LAYOUT="-l${LIBICU}le${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_LAYOUTEX="-l${LIBICU}lx${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}"
#SH#ICULIBS_BASE="${LIBS} -L${libdir}"
#SH#ICULIBS="${ICULIBS_BASE} ${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA}" 

## End Cygwin-specific setup