cMake: Ich habs zwar echt gehasst, weil die Dokumentation sich in einer einzelnen ellenlangen WebSeite ergiesst, ohne Anker und ohne Beispiele. Teilweise findet man mehr Info im Wiki unter den FAQ etc. Im Mailinglistenarchiv findet man viele Leute die u.a. auch Java mit cMake builden wollen. Fast immer antwortet ihnen aber keiner. Daher hier mal ein Loesungsansatz von mir:
Wichtige Tipps fuer cMake: geht was nicht, bzgl. dass er das tut was frueher mal im CMakeLists.txt File stand CMakeCache loeschen. Ggf. auch das Verzeichnis CMakeFiles. Gebuildet wird mit cmake . im entsprechenden Verzeichnis.
Im folgenden Beispiel moechten wir ein Java Projekt java2cpp builden, welches sich im Pfad src/org/java2cpp ausgehend vom aktuellen Pfad befindet. Dazu compilen wir zunaechst die java Klassen, und bilden dann ein jar Archiv. Dieses wird dann noch wohinauchimmer installiert.
Falls man erst ein CMakeLists.txt unterhalb eines anderen SubDirectories abarbeiten moechte in das CMakeLists.txt des derzeitigen Verzeichnisses:
ADD_SUBDIRECTORY(src/org/java2cpp)
In diesem Verzeichnis in die CMakeLists.txt z.B. reinhaemmern:
PROJECT (java2cpp Java)
SET(CMAKE_VERBOSE_MAKEFILE 1)
SET (CLASS_DIR "class")
SET (JAR_DIR "jar")
FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CLASS_DIR})
FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${JAR_DIR})
SET (JAR_FILE java2cpp.jar)
SET (JAVA_FILES
ClassInfo FileInfo Java2Cpp PackageInfo Tokenizer
Consts FileProc MainInfo QualifiedName TranslatorException
DSortMap FileScan Modifiers SyntaxException TypeInfo
)
# compile all .java files with javac to .class
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${JAVA_FILES}.class
COMMAND ${CMAKE_Java_COMPILER}
ARGS -d ${CMAKE_CURRENT_SOURCE_DIR}/${CLASS_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/*.java
)
# build .jar file from .class files
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${JAR_FILE}
DEPENDS
${CMAKE_CURRENT_BINARY_DIR}/${JAVA_FILES}.class
COMMAND ${CMAKE_COMMAND}
ARGS -E chdir ${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_Java_ARCHIVE} -cfCv ${JAR_DIR}/${JAR_FILE} ${CLASS_DIR} org/java2cpp
)
# the target
ADD_CUSTOM_TARGET(
${JAR_FILE}
ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${JAR_FILE})
# GLOBAL_ADD_ITEM( ${JAR_FILE} )
INSTALL_FILES( ${CMAKE_CURRENT_BINARY_DIR}/wohinauchimmer/bin FILES ${JAR_FILE} )
Sonntag, 17. Februar 2008
Franzoesisch-Schnellkurs im TGV Stuttgart-Paris
Im TGV von Stuttgart nach Paris kann man waehrend der rasanten Fahrt von 3,5h eine Art Schnellkurs in Franzoesisch buchen (ca. 30 Euro). Normalerweise muss man dies vorher buchen, wenns aber zu wenig Teilnehmer sind, werden bei Fahrtantritt noch dynamisch weitere Teilnehmer gesucht. Achja, das einfache Ticket gibts schon ab 39 Euro, man muss nur im Automaten stoebern
Kreditverkauf
Eine neue miese Masche ist der sogen. Kreditverkauf. Beispiel Haeuslebauer, kauft dies auf Kredit bei der Bank und zahlt brav monatlich seine Rate. Die Bank ihrerseits kann aber nun anscheinend jederzeit diesen Kredit quasi weiterverkaufen, z.B. an einen Finanzinvestor (neudeutsch: Heuschrecke). Dieser kann nun bspw. eine Zwangsversteigerung der Immobilie beantragen und kommt damit u.U. sogar noch durch, weil machbar. Der Kreditnehmer ist dagegen derzeit gesetzlich nicht geschuetzt. Die Commerzbank bietet derzeit bei Zinsaufschlag den Schutz an den Kredit nicht weiterzuverkaufen. Das kanns aber auch nicht sein. Der Gesetzgeber sollte hier dringendst handeln..
Letzte Kommentare