This commit is contained in:
Alexander Corrado 2011-08-15 03:19:44 -04:00
Родитель bdd77ead03
Коммит cb888f8440
4 изменённых файлов: 27 добавлений и 16 удалений

Просмотреть файл

@ -1,7 +1,7 @@
EXTRA_DIST = m4/expansions.m4 EXTRA_DIST = m4/expansions.m4
SUBDIRS = src examples SUBDIRS = src examples qt
if ENABLE_DEBUG if ENABLE_DEBUG
SUBDIRS += tests SUBDIRS += tests

Просмотреть файл

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
PROJECT=CPPInterop PROJECT=cxxi
FILE= FILE=
CONFIGURE=configure.ac CONFIGURE=configure.ac

Просмотреть файл

@ -63,12 +63,10 @@ dnl package checks, per config
AC_CONFIG_FILES([ AC_CONFIG_FILES([
src/Mono.Cxxi/mono.cxxi.pc src/Mono.Cxxi/mono.cxxi.pc
src/Mono.Cxxi/Makefile src/Mono.Cxxi/Makefile
src/QtBindings/qtbindings.pc
src/QtBindings/Makefile
src/generator/generator src/generator/generator
src/generator/Makefile src/generator/Makefile
src/qt/Makefile
src/Makefile src/Makefile
qt/Makefile
tests/Makefile tests/Makefile
examples/Makefile examples/Makefile
examples/Hello/Makefile examples/Hello/Makefile

Просмотреть файл

@ -1,29 +1,42 @@
top_srcdir = ../.. top_srcdir = ..
INTEROP_DLL = \ INTEROP_DLL = \
$(top_srcdir)/bin/Debug/Mono.Cxxi.dll $(top_srcdir)/bin/Debug/Mono.Cxxi.dll
HANDWRITTEN = \
QString.cs \
QApplication.cs \
QCoreApplication.cs \
QSize.cs \
QPushButton.cs
all: hello.exe all: hello.exe
qt-gui.xml: qt-gui.h # HACK: some Mac versions of Qt don't play nice with pkg-config
$(GCCXML) -fxml=$@ --gccxml-cxxflags "-m32 -I." /Library/Frameworks/QtGui.framework/Versions/Current/Headers/QtGui QT_FLAGS := `pkg-config --silence-errors --cflags QtCore QtGui || \
(ln -s /Library/Frameworks/QtGui.framework/Versions/Current/Headers QtGui && \
ln -s /Library/Frameworks/QtCore.framework/Versions/Current/Headers QtCore && \
echo "-m32 -I. -I/Library/Frameworks/QtGui.framework/Versions/Current/Headers")`
generated: qt-gui.xml qt-gui.xml: qt-gui.h
$(GCCXML) -fxml=$@ --gccxml-cxxflags $(QT_FLAGS) $^
generated: qt-gui-filters.xml qt-gui.xml
$(RM) -r generated $(RM) -r generated
$(MONO) --debug $(top_srcdir)/bin/Debug/generator.exe -o=generated -ns=Qt.Gui -lib=QtGui --filters=qt-gui-filters.txt qt-gui.xml $(MONO) --debug $(top_srcdir)/bin/Debug/generator.exe -o=generated -ns=Qt.Gui -lib=QtGui --filters=$^
#libQtGui-inline.so: qt-gui.cpp #libQtGui-inline.so: qt-gui.cpp
# $(CXX) -m32 -I. -framework QtGui -framework QtCore -DQ_WS_MAC --shared -fPIC -o $@ -fkeep-inline-functions qt-gui.cpp # $(CXX) -m32 -I. -framework QtGui -framework QtCore -DQ_WS_MAC --shared -fPIC -o $@ -fkeep-inline-functions qt-gui.cpp
Qt.Gui-binding.dll: generated QString.cs QSize.cs QApplication.cs QCoreApplication.cs Qt.Gui-binding.dll: generated $(addprefix src/,$(HANDWRITTEN))
$(RM) -f generated/QString.cs generated/QSize.cs $(RM) -f generated/QString.cs generated/QSize.cs
$(GMCS) -debug -out:$@ -target:library -unsafe -r:$(INTEROP_DLL) generated/*.cs QString.cs QApplication.cs QCoreApplication.cs QSize.cs $(GMCS) -debug -out:$@ -target:library -unsafe -r:$(INTEROP_DLL) generated/*.cs $(addprefix src/,$(HANDWRITTEN))
hello.exe: Qt.Gui-binding.dll hello.cs #libQtGui-inline.so hello.exe: Qt.Gui-binding.dll demos/hello.cs #libQtGui-inline.so
$(GMCS) -debug -out:$@ -target:exe -r:$(INTEROP_DLL) -r:Qt.Gui-binding.dll hello.cs $(GMCS) -debug -out:$@ -target:exe -r:$(INTEROP_DLL) -r:Qt.Gui-binding.dll demos/hello.cs
clean: clean:
$(RM) -rf generated hello.exe* qt-gui.xml Qt.Gui-binding.dll* libQtGui-inline.so $(RM) -r generated QtCore QtGui hello.exe* qt-gui.xml Qt.Gui-binding.dll* libQtGui-inline.so
run: hello.exe run: hello.exe
MONO_PATH=.:$(top_srcdir)/bin/Debug $(MONO) --debug --trace=__CppLibraryImplAssembly hello.exe MONO_PATH=.:$(top_srcdir)/bin/Debug $(MONO) --debug hello.exe