Hallo zusammen,
ich habe mir vorgenommen, nach mehreren Jahren Pause endlich mkd64 weiterzuentwickeln. Wer jetzt nicht weiß, was das ist: Es handelt sich um ein Tool, um .D64 disk images zu erstellen, vor allem dafür gedacht, direkt in einem cross-build Prozess eingesetzt zu werden, so dass die selbst entwickelte C64 Software direkt auf einem disk image landet. Die bisher aktuelle Version 1.4b findet ihr Bitte melde dich an, um diesen Link zu sehen., in der CSDb gibt es Bitte melde dich an, um diesen Link zu sehen..
Bevor ich aber wieder in den Code einsteige wollte ich das Projekt erst einmal neu strukturieren, so wie es mir heute "in den Kram passt" (wer mag schon den Krempel, den er vor Jahren gebaut hat). Ich möchte es a) einfacher haben und b) bei Gelegenheit den Code modernisieren (Richtung C11, eventuell C18). Deshalb habe ich als ersten kleinen Schritt das Buildsystem umgestellt. Bisher konnte mkd64 auf zwei verschiedene Arten gebaut werden:
- mit GNU make (dafür waren handgeschriebene Makefiles drin)
- mit Visual Studio (dafür waren .sln / .vcproj Files drin)
Letzteres fällt komplett weg, schon allein, weil Microsofts C-Compiler einfach nicht mehr zeitgemäß ist -- Microsoft hat wohl entschieden, dass C nicht mehr interessiert sondern nur noch C++. Auf Windows muss in Zukunft mit mingw gebaut werden, ich empfehle dazu die Installation von Bitte melde dich an, um diesen Link zu sehen.. Ersteres habe ich jetzt ersetzt durch ein ebenfalls selbst geschriebenes Build-System, das nur GNU make verwendet; es nennt sich Bitte melde dich an, um diesen Link zu sehen..
Ein erstes Resultat dieser Umstellung ist seit heute eingecheckt, und es würde mich freuen, wenn jemand den Build testen könnte. Bisher ist es nur möglich, das Tool selbst (und die 3 bisher existierenden Plugins) zu bauen und zu installieren, am Code hat sich noch nichts geändert (gebaut wird Version 1.4b), Dokumentation und SDK für Plugins kann noch gar nicht gebaut werden. Das kommt hoffentlich noch ![]()
Wer es testen will bekommt den Source mit
git clone --recursive https://github.com/Zirias/c64_tool_mkd64 mkd64
danach lässt es sich mit make oder make strip (für "gestrippte" executables, also ohne unnötige symbole) bauen. make install installiert (auf Windows per default ins Unterverzeichnis dist, auf POSIX-Systemen wie Linux oder *BSD in den Verzeichnisbaum unter /usr/local). Das Build-System versteht viele übliche Variablen, wie z.B. prefix und DESTDIR.
Auf Systemen, auf denen GNU make nicht das standard "make" ist (z.B. alle BSDs), muss statt make gmake geschrieben werden.
Würde mich über etwas Feedback zum neuen Buildsystem freuen, vor allem um Bugs zu finden und zu beheben.
Wenn das alles rund läuft wäre mein nächster Plan, ein neues Plugin zu schreiben, damit mkd64 auch Bitte melde dich an, um diesen Link zu sehen. Files schreiben kann ![]()