Project announcement: libcmini

C and PASCAL (or any other high-level languages) in here please

Moderators: simonsunnyboy, Mug UK, Zorro 2, Moderator Team

User avatar
mfro
Atari Super Hero
Atari Super Hero
Posts: 813
Joined: Thu Aug 02, 2012 10:33 am
Location: SW Germany

Re: Project announcement: libcmini

Postby mfro » Tue Dec 26, 2017 7:15 am

wongck wrote:Thank you for the excellent small lib.
Sorry for my lack of knowledge on Github, but these are sources and there is no ready to use Lib.
Is that true or am I looking at the wrong place?


Thank you for your interest in libcmini.
Yes. Currently, there is no binary distribution available. I'm still working on it.

There is an automated build process on each check-in using travis-ci already (stolen from EmuTOS), but I don't have a good concept distributing the result yet, need to figure out all that github stuff myself first. Until then, it's just a matter of three commands to build it:

Code: Select all

git clone https://github.com/mfro0/libcmini
cd libcmini
make

ThorstenOtto
Atari Super Hero
Atari Super Hero
Posts: 866
Joined: Sun Aug 03, 2014 5:54 pm

Re: Project announcement: libcmini

Postby ThorstenOtto » Tue Dec 26, 2017 10:23 am

mfro wrote:but I don't have a good concept distributing the result yet, need to figure out all that github stuff myself first.


Basically, you have three choices
  1. deploy it to a separate host. This is done e.g. in the EmuTOS repo (deploying to the old SF repo), and in Aranym (deploying to bintray).
  2. deploy it to a different repo, using the same account on github. This is what freemint currently does, but since this it is just another git repo, this will be just a new commit, and the repo will constantly grow even if you delete old images before committing.
  3. deploy it to a separate branch in the same repo. This is what I'm currently doing in my RscView repo (https://github.com/th-otto/rscview). The builds branch there only contains the binaries, not the sources from master. But you have to be careful with the travis settings, otherwise any commit to that branch will trigger another build, resulting in an endless build loop.

Feel free to ask any questions if you need help with this.

User avatar
mfro
Atari Super Hero
Atari Super Hero
Posts: 813
Joined: Thu Aug 02, 2012 10:33 am
Location: SW Germany

Re: Project announcement: libcmini

Postby mfro » Tue Dec 26, 2017 10:43 am

ThorstenOtto wrote:
mfro wrote:but I don't have a good concept distributing the result yet, need to figure out all that github stuff myself first.


Basically, you have three choices


Thank you. Actually, I'm aiming for the fourth one ;).

Not really different from what you suggest, but since github appears to create a source archive on release anyway, I'm trying to stuff my binary release in there as well (seems to be the natural choice for a library anyway).
I just need to find a good way to do this.

ThorstenOtto
Atari Super Hero
Atari Super Hero
Posts: 866
Joined: Sun Aug 03, 2014 5:54 pm

Re: Project announcement: libcmini

Postby ThorstenOtto » Tue Dec 26, 2017 11:02 am

mfro wrote:I just need to find a good way to do this.


If you find one, let me know ;) I've already tried this, and it does not seem to be possible, because you don't have direct access to the directories where the repo is stored on the server. And the source archives that appear there are only build when you create a tag, something that you most likely don't want to do for automatic builds.

User avatar
mfro
Atari Super Hero
Atari Super Hero
Posts: 813
Joined: Thu Aug 02, 2012 10:33 am
Location: SW Germany

Re: Project announcement: libcmini

Postby mfro » Tue Dec 26, 2017 9:21 pm

ThorstenOtto wrote:
mfro wrote:I just need to find a good way to do this.


If you find one, let me know ;) I've already tried this, and it does not seem to be possible, because you don't have direct access to the directories where the repo is stored on the server. And the source archives that appear there are only build when you create a tag, something that you most likely don't want to do for automatic builds.


This appears to work now as I wanted it. Whenever I do a tagged commit (release), the installation files get deployed into the corresponding github release.

Repository growth avoided, target achieved ;)

Binary files can be found here: https://github.com/mfro0/libcmini/releases

User avatar
wongck
Ultimate Atarian
Ultimate Atarian
Posts: 12789
Joined: Sat May 03, 2008 2:09 pm
Location: Far East
Contact:

Re: Project announcement: libcmini

Postby wongck » Tue Dec 26, 2017 11:42 pm

mfro wrote:Binary files can be found here: https://github.com/mfro0/libcmini/releases

WOW... that's quick.
Great stuff !!! Thanks !!!
My Stuff: FB/Falcon CT63 CTPCI ATI RTL8139 USB 512MB 30GB HDD CF HxC_SD/ TT030 68882 4+32MB 520MB Nova/ 520STFM 4MB Tos206 SCSI
Shared SCSI Bus:ScsiLink ethernet, 9GB HDD,SD-reader @ http://phsw.atari.org
My Atari stuff for sale - click here for list

ThorstenOtto
Atari Super Hero
Atari Super Hero
Posts: 866
Joined: Sun Aug 03, 2014 5:54 pm

Re: Project announcement: libcmini

Postby ThorstenOtto » Wed Dec 27, 2017 10:20 am

mfro wrote:Whenever I do a tagged commit (release), the installation files get deployed into the corresponding github release.


Yes, this was the problem i encountered. You can use it for releases, but not for snapshot builds like eg. used in Freemint or Aranym.

But grats that you found a quick solution for your case ;)

User avatar
mfro
Atari Super Hero
Atari Super Hero
Posts: 813
Joined: Thu Aug 02, 2012 10:33 am
Location: SW Germany

Re: Project announcement: libcmini

Postby mfro » Wed Dec 27, 2017 3:37 pm

ThorstenOtto wrote:... You can use it for releases, but not for snapshot builds like eg. used in Freemint or Aranym ...


Maybe that's (one of) the reason(s) we didn't see a new release for both since years? :D

Seriously, for a library project like libcmini, this process seems ideal to me. You'll need to dig out your compiler to do something useful with it anyway, so there isn't much extra effort if you want to update between releases.

mikro
Hardware Guru
Hardware Guru
Posts: 2035
Joined: Sat Sep 10, 2005 11:11 am
Location: Kosice, Slovakia
Contact:

Re: Project announcement: libcmini

Postby mikro » Thu Jan 04, 2018 10:14 am

Btw if you would like your SVN tree, just let me know -- I have a dump of all AtariForge SVN repos.

LuigiThirty
Atari maniac
Atari maniac
Posts: 87
Joined: Sat Sep 03, 2016 12:20 am

Re: Project announcement: libcmini

Postby LuigiThirty » Wed Feb 07, 2018 1:03 am

Awesome!

User avatar
willy
Atari freak
Atari freak
Posts: 72
Joined: Fri Apr 05, 2013 2:38 pm

Re: Project announcement: libcmini

Postby willy » Sat Aug 31, 2019 11:49 am

Hi.

I'm using gcc 8.3 without mintlib (not necessary for assembler), now i want to use libcmini.
I compiled everything but test compilation fails because of missing gem.h
What do i need installed to compile/use libcmini?

Code: Select all

CC objs/acctest.o
sources/acctest.c:10:10: fatal error: gem.h: No such file or directory
 #include <gem.h>
          ^~~~~~~


How to fix that without installing a whole mint subsystem ?

Thanks in advance.

User avatar
mfro
Atari Super Hero
Atari Super Hero
Posts: 813
Joined: Thu Aug 02, 2012 10:33 am
Location: SW Germany

Re: Project announcement: libcmini

Postby mfro » Sat Aug 31, 2019 3:26 pm

Thank you for your interest in libcmini.

willy wrote:How to fix that without installing a whole mint subsystem ?

Thanks in advance.


You do not need the whole 'mint subsystem', gemlib should be enough. If you do not want to install that either, you can still skip the build of the test programs:

Code: Select all

make libs startups


should do it.
Note that I didn't test libcmini with gcc 8.3 (only 4.6.4), so here be dragons (although I wouldn't expect too many problems).

User avatar
willy
Atari freak
Atari freak
Posts: 72
Joined: Fri Apr 05, 2013 2:38 pm

Re: Project announcement: libcmini

Postby willy » Sat Aug 31, 2019 5:13 pm

I'm not afraid of dragons ... but little bugs ;)

make libs startups install-libs install-startup
did the job

willy@willy-mietus ~/src/falcon/libcminitest $ ll
total 12
drwxrwxr-x 2 willy willy 4096 Aug 31 19:02 ./
drwxr-xr-x 9 willy willy 4096 Aug 31 18:39 ../
-rw-r--r-- 1 willy willy 85 Aug 31 18:39 hello.c
willy@willy-mietus ~/src/falcon/libcminitest $ cat hello.c
#include <stdio.h>

int main(int argc, char *argv[])
{
printf("hello world\n");
}
willy@willy-mietus ~/src/falcon/libcminitest $ m68k-atari-mint-gcc -m68020-60 -nostdlib $LIBCMINI/startup.o hello.c -o hello.tos -s -L$LIBCMINI -lcmini -lgcc
willy@willy-mietus ~/src/falcon/libcminitest $ ll
total 16
drwxrwxr-x 2 willy willy 4096 Aug 31 19:02 ./
drwxr-xr-x 9 willy willy 4096 Aug 31 18:39 ../
-rw-r--r-- 1 willy willy 85 Aug 31 18:39 hello.c
-rwxrwxr-x 1 willy willy 3388 Aug 31 19:02 hello.tos*
willy@willy-mietus ~/src/falcon/libcminitest $ m68k-atari-mint-gcc --version
m68k-atari-mint-gcc (MiNT 20190223) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

willy@willy-mietus ~/src/falcon/libcminitest $


Thank You. Nice job.

User avatar
mfro
Atari Super Hero
Atari Super Hero
Posts: 813
Joined: Thu Aug 02, 2012 10:33 am
Location: SW Germany

libcmini: new release 0.5

Postby mfro » Sun Oct 20, 2019 8:30 am

Thanks to diligent contributors (thank you), libcmini received some new functionality and bug fixes which deserve a release. You can find it at the usual place:

Git repository:
https://github.com/mfro0/libcmini

Combined Source/Binary release files:
https://github.com/mfro0/libcmini/releases


Social Media

     

Return to “C / PASCAL etc.”

Who is online

Users browsing this forum: No registered users and 6 guests