graphlcd (base, vdr-plugin) touchcol branch (archiv)

  • Ich habe mir das Makefile von Graphlcd mal genauer angeschaut.


    Dieser Block führt zu Problemen:

    Code
    ifeq ($(PLGCFG),)
        VDRDIR ?= ../../..
        PLGCFG = $(VDRDIR)/Make.config
    endif


    Bei mir ist PLGCFG undefiniert und das ist so auch erlaubt. PLGCFG ist optional
    Da Makefiles nicht von oben nach unten abgearbeitet werden, wird hier VDRDIR nach ../../.. gesetzt


    Das hat dann zur Folge, dass pkg-config fehlschlägt.

  • news (vdr-plugin-graphlcd)


    • consider that both VDRDIR and PLGCFG can be empty

    wie auf seite 44 bereits vorgeschlagen, werden VDRDIR und PLGCFG jetzt separat behandelt.
    eine extra behandlung, dass Make.config in neueren versionen _ueberhaupt_ nicht mehr inkludiert werden kann, wird noch folgen.
    getestet innerhalb v. vdr sowohl v. vdr-root aus als auch v. plugin-verzeichnis aus und von plugin-verzeichnis ausserhalb v. vdr-tree (mittels VDRDIR=<path to vdr-tree> make)



    ergaenzung (behandlung v. Make.config)-inkludierung:


    news (vdr-plugin-graphlcd):


    • disallow inclusion of Make.config when VDR >= 1.7.33
  • consider that both VDRDIR and PLGCFG can be empty

    Und prompt wird das Plugin nun, keine Ahnung warum, ohne API-Suffix installiert (ja, ich verwende Gentoo, also "installiere" ich) , was dazu fuehrt das es beim Start des vdr-1.7.35 nicht mehr geladen wird...:(

  • alle aktuellen aenderungen von mir erfolgten aber unterhalb v. APIVERSION = $(call PKGCFG,apiversion).


    auch das ifeq ($(strip $(APIVERSION)),) wird da kaum so hineinpfuschen, dass am ende ein leerer string heraus kommt ...
    (und in dieses ifeq kommt es nur hinein, wenn im vdr.pc kein apiversion gesetzt ist oder vdr.pc nicht geladen werden kann)


    ich sehe da jetzt nicht wirklich irgendetwas, was da diesbez. an meinen aenderungen problematisch waere ...


    aber du kannst ja ein


    $(info APIVERSION $(APIVERSION))


    zum debuggen an geeigneten stellen einbauen, um zu sehen, wo das apiversion verloren geht ...

  • Gut, das war nur geraten. Tatsache ist das der oben zitierte Block die Ursache ist. Auskommentieren und schon funktionierts.


    Irgendwie beeinflusst das bei mir dass keine CXXFLAGS beim Compiler ankommen. Ich denke das daher auch die APIVERSION verschwindet.


    Dein Makefile-Wirrwarr blicke ich jetzt auf die Schnelle nicht.
    Mach zwei Makefiles oder nur ein Makefile für die neuen VDR-Versionen.

  • Zitat

    Gut, das war nur geraten. Tatsache ist das der oben zitierte Block die Ursache ist. Auskommentieren und schon funktionierts.

    denke ich mir bei der unqualifizierten aussage.


    Zitat

    Irgendwie beeinflusst das bei mir dass keine CXXFLAGS beim Compiler
    ankommen. Ich denke das daher auch die APIVERSION verschwindet.

    tja. was soll man dazu sagen. das leben ist ein kommen und gehen ...


    wenn du das plugin ausserhalb v. vdr kompilierst, solltest du das VDRDIR=/path/to/vdr vor dem make-aufruf nicht vergessen ...
    (wenn als shell bash oder sh verwendet wird).



    Zitat

    Dein Makefile-Wirrwarr blicke ich jetzt auf die Schnelle nicht.

    aufgrund deiner bisherigen aussagen verstehe ich jetzt, weshalb das fuer dich ein wirrwar ist ...

    Zitat

    Mach zwei Makefiles oder nur ein Makefile für die neuen VDR-Versionen.

    GANZ


    SICHER


    NICHT!

  • jetzt mal zur abwechslung mit etwas logischem denken:


    wie soll es funktionieren, wenn zb. das plugin in /tmp/ entpackt wird, du dann nach /tmp/vdr-graphlcd-plugin wechselst und dort dann make eingibst, ohne dass VDRDIR bekannt ist (dh. nicht als env.variable direkt gesetzt oder beim aufruf mit VDRDIR=.... mitgegeben)?


    holt sich das make dann die information von einem wahrsager ab?

  • jetzt mal zur abwechslung mit etwas logischem denken:


    wie soll es funktionieren, wenn zb. das plugin in /tmp/ entpackt wird, du dann nach /tmp/vdr-graphlcd-plugin wechselst und dort dann make eingibst, ohne dass VDRDIR bekannt ist (dh. nicht als env.variable direkt gesetzt oder beim aufruf mit VDRDIR=.... mitgegeben)?


    holt sich das make dann die information von einem wahrsager ab?


    Nein, der holt das von pkg-config, das funktioniert wirklich ;)


    Wenn man ausserhalb baut, dann ist ja das VDR Quellverzeihnis eh nicht vorhanden, dann sind nur die Header im System (d.h. das vdr-dev Packet ist installiert).


    cu

  • Ein ordnungsgemäß installierter VDR legt seine Headerdateien in /usr/include/vdr ab.
    Mehr als Headerdateien braucht man zum kompilieren nicht. Alle diese Verzeichnisse lassen sich über ein "call PKGCFG" abrufen.


    Da steht in meinem Fall das hier drin:


    In meiner Make.config steht das hier:


    Code
    CFLAGS      += -O3
    CXXFLAGS    += -O3
    PREFIX       = /usr
    LIBDIR       = /usr/lib/vdr/plugins
    VDR_USER     = vdr


    LIBDIR ändere ich nur, weil ich (vdr4arch) in /usr/lib/vdr auch noch den shutdown-wrapper ablege. Das ändere ich aber eventuell in Zukunft. Das es dem VDR-Standard bzw. FHS-Standard folgt.

  • news (vdr-plugin-graphlcd):

    • Makefile: should now be compliant with 'new style make' and old vdr versions (incl. 1.4.x)

    so. habe das Makefile ausgehend von einem via newplugin generiertem makefile neu erzeugt und angereichert, sodass es jetzt fuer div. vdr-versionen (neu, alt, sogar 1.4.x) brauchbar sein sollte, egal ob pkg-config das vdr.pc vom tree holt oder vom system, es werden auch auf keine dateien v. vdr mehr direkt zugegriffen und ich habe es in allen moeglichen und unmoeglichen anwendungsfaellen ausprobiert (ausg. jene, die ich uebersehen habe) ...
    achtung luxusedition: ich habe sogar ein paar kommentare hineingeschrieben ...


    bitte testen ...

  • Hi,


    ich habe nun meinen Mimo 720-S soweit, dass er die Ausgabe von GraphLCD anzeigt.


    In der graphlcd.conf habe ich folgende Settings:


    Code
    [serdisp_udlfb]
      Driver=serdisp
      Controller=framebuffer
      Device=out:
      Options=reportdamage=auto;fbdevice=/dev/fb1


    Die Frage ist nun, wie bekomme ich es hin, dass auch "touch" funktoiniert?

  • protokol ausfindig machen ...


    Das würde ich evtl. noch hinbekommen.



    [...] und dazuprogrammieren :)


    Das aber ganz sicher nicht. :(


    lsusb sagt:


Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!