~iaz/+junk/demo-bindings

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: ivan.a.zorin at gmail
  • Date: 2011-11-16 16:16:00 UTC
  • Revision ID: ivan.a.zorin@gmail.com-20111116161600-59pn7uz60ksqcpxh
demo-bindings: add objective-c bindings support

Show diffs side-by-side

added added

removed removed

Lines of Context:
49
49
DIR_JAVA=bindings/java
50
50
DEMO_JAVA=${DEMODIR}/java-demo.java
51
51
 
 
52
# Objective-C variables
 
53
 
 
54
GNUFLAGS=-lgnustep-base -I/usr/include/GNUstep
 
55
OBJFLAGS=-lobjc -fconstant-string-class=NSConstantString
 
56
 
 
57
LIBID_OBJC=rary_objc
 
58
LIBDIR_OBJC=bindings/objc
 
59
LIBNAME_OBJC=Library_objc
 
60
 
 
61
LIBSRC_OBJC=${LIBDIR_OBJC}/${LIBNAME_OBJC}.m
 
62
LIBHDR_OBJC=${LIBDIR_OBJC}/${LIBNAME_OBJC}.h
 
63
LIBBIN_OBJC=${LIBDIR_OBJC}/library_objc.so
 
64
 
 
65
DEMONAME_OBJC=objc-demo
 
66
DEMOSRC_OBJC=${DEMODIR}/${DEMONAME_OBJC}.m
 
67
DEMOBIN_OBJC=${DEMODIR}/${DEMONAME_OBJC}
 
68
 
52
69
### targets
53
70
 
54
 
default: lib-shared lib-demo libpp-shared libpp-demo pymodule javapackage \
55
 
        lib-run libpp-run pymodule-run javapackage-run
 
71
default: lib-shared lib-demo libpp-shared libpp-demo libobjc-shared libobjc-demo pymodule javapackage \
 
72
        lib-run libpp-run pymodule-run javapackage-run libobjc-run
56
73
 
57
74
# C targets
58
75
 
59
 
lib: lib-shared lib-demo lib-run
 
76
lib: lib-shared lib-demo
60
77
 
61
78
lib-shared: ${LIBSRC} ${LIBHDR}
62
79
        ${CC} ${CFLAGS} ${LDFLAGS} -pedantic -Wall -fPIC ${LIBSRC} -shared -o ${LIBBIN}
71
88
 
72
89
# C++ targets
73
90
 
74
 
libpp: libpp-shared libpp-demo libpp-run
 
91
libpp: libpp-shared libpp-demo
75
92
 
76
93
libpp-shared: ${LIBSRC_PP} ${LIBHDR_PP}
77
94
        ${CXX} ${CFLAGS} ${LDFLAGS} -pedantic -Wall -I${LIBDIR} -L${LIBDIR} -l${LIBID} -fPIC ${LIBSRC_PP} -shared -o ${LIBBIN_PP}
116
133
        LD_LIBRARY_PATH=${DIR_JAVA}/native:${LIBDIR} java -cp ${DIR_JAVA}:${DEMODIR} Main
117
134
        @echo " ---- ----"
118
135
 
 
136
# Objective-C targets
 
137
 
 
138
libobjc: libobjc-shared libobjc-demo
 
139
 
 
140
libobjc-shared: ${LIBSRC_OBJC} ${LIBHDR_OBJC}
 
141
        ${CC} ${CFLAGS} ${LDFLAGS} ${GNUFLAGS} ${OBJFLAGS} -Wall -Wextra -I${LIBDIR} -L${LIBDIR} -l${LIBID} -fPIC ${LIBSRC_OBJC} -shared -o ${LIBBIN_OBJC}
 
142
 
 
143
libobjc-demo:
 
144
        ${CC} ${CFLAGS} ${LDFLAGS} ${GNUFLAGS} ${OBJFLAGS} -Wall -Wextra -I${LIBDIR_OBJC} -L${LIBDIR} -L${LIBDIR_OBJC} -l${LIBID} -l${LIBID_OBJC} ${DEMOSRC_OBJC} -o ${DEMOBIN_OBJC}
 
145
 
 
146
libobjc-run:
 
147
        @echo " ---- Testing compiled binding: Objective-C library ---- "
 
148
        LD_LIBRARY_PATH=${LIBDIR}:${LIBDIR_OBJC}:${LD_LIBRARY_PATH} ./$(DEMOBIN_OBJC)
 
149
        @echo " ---- ----"
 
150
 
119
151
# clean routine
120
152
 
121
153
clean:
122
154
        -rm -rf ${LIBDIR}/*.so ${LIBDIR}/*.o
123
155
        -rm -rf ${DEMODIR}/*.o ${DEMOBIN}
124
156
        -rm -rf ${LIBDIR_PP}/*.so ${LIBDIR_PP}/*.o ${DEMOBIN_PP}
 
157
        -rm -rf ${LIBDIR_OBJC}/*.so ${LIBDIR_OBJC}/*.o ${DEMOBIN_OBJC}
125
158
        -rm -rf ${DIR_PY}/*.so ${DIR_PY}/*.o ${DIR_PY}/*.pyc ${WRAP_PY} ${DIR_PY}/${NAME_PY}.py
126
159
        -rm -rf ${DEMODIR}/*.class
127
160
        make -C ${DIR_JAVA} clean