Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Paket mit speziellen configure Einstellungen bauen
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum
View previous topic :: View next topic  
Author Message
tazinblack
Veteran
Veteran


Joined: 23 Jan 2005
Posts: 1070
Location: Baden / Germany

PostPosted: Thu Jan 19, 2017 2:41 pm    Post subject: Paket mit speziellen configure Einstellungen bauen Reply with quote

Hallo zusammen,

bisher hab ich mich immer erfolgreich davor gedrückt, aber irgendwann musste es ja soweit kommen.
Sprich ich müsste das Paket dev-lang/php mit speziellen configure Optionen bauen, welche sich nicht über USE-Flags abbilden lassen.

In meinem Fall wären das "--with-custom-odbc" und "--with-apxs2=/usr/local/apache2/bin/apxs"

Da ich inzwischen auch schon ein paar Tage mit gentoo arbeite :wink: ist mir klar, dass ich dafür wohl das ebuild anpassen muss, damit sich php sonst wie gewohnt verhält.
Um nicht wieder alles zu verlieren beim nächsten sync, brauche ich wohl einen lokalen overlay.

Bzgl. Ebuild werde ich versuchen mich daran zu orientieren https://devmanual.gentoo.org/ebuild-writing/.

Könnt ihr, als alte Hasen, mir evtl. schon vorab den einen oder anderen Tipp geben?

Aktuell installiert habe ich dev-lang/php-5.6.29:5.6. Das ebauild ist also php-5.6.29.ebuild

Aus dem Stand fallen mir schon die ersten Fragen ein:

  • Muss ich meinem eigenen ebuild einen eigenen Namen geben? Also z.B. php_custodbc-5.6.29.ebuild
  • Vermutlich muss der Ordner dann auch dev-lang/php_custodbc heißen und entsprechend das distfile?
  • Was muss ich noch alles aus /usr/portage/dev-lang/php mit in mein overlay mitnehmen? Vermutlich metadata.xml und das Verzeichnis files, nicht aber Manifest
  • Brauche ich den repoman?


Ich leg mal los mit meinen overlay...

Danke Euch schon mal für die Tipps!
_________________
Gruß / Regards
tazinblack
_______________________________________________________
what's the point in being grown up if you can't be childish sometimes
Back to top
View user's profile Send private message
tazinblack
Veteran
Veteran


Joined: 23 Jan 2005
Posts: 1070
Location: Baden / Germany

PostPosted: Thu Jan 19, 2017 3:23 pm    Post subject: Reply with quote

Besonders cool wäre es natürlich, wenn ich per "eselect php" dann auch auf die von mir angepasste Version umschalten könnte.
Dazu müsste das Paket dann wohl vermutlich doch den gleichen Namen haben.
_________________
Gruß / Regards
tazinblack
_______________________________________________________
what's the point in being grown up if you can't be childish sometimes
Back to top
View user's profile Send private message
Fijoldar
Apprentice
Apprentice


Joined: 10 Apr 2013
Posts: 248

PostPosted: Thu Jan 19, 2017 6:58 pm    Post subject: Reply with quote

Im Grunde dürfte es reichen, wenn du einfach folgenden Eintrag in die package.mask hinzufügst:
Code:

dev-lang/php::gentoo

Dann sollte Portage das Paket zwangsläufig aus deinem eigenen Repo nehmen, sobald es konfiguriert wurde. Das Paket muss und sollte dann natürlich genauso heißen. Dann kannst du auch wie bisher mit eselect zwischen den Versionen wechseln.

Das Problem, dass du das ebuild pflegen und regelmäßig neue Versionen pushen musst, hast du ja dann eh. Bei einem so wichtigen Paket, würde ich den Aufwand allerdings nicht unterschätzen ;-).
Back to top
View user's profile Send private message
Child_of_Sun_24
Guru
Guru


Joined: 28 Jul 2004
Posts: 410

PostPosted: Thu Jan 26, 2017 1:03 pm    Post subject: Reply with quote

Ich füge eigene configure optionen immer mithilfe von /etc/portage/env und /etc/portage/package.env hinzu, allerdings global, so dass keine "neue" Version entsteht.

z.B.

/etc/portage/env/php.conf
EXTRA_ECONF="--with-custom-odbc --with-apxs2=/usr/local/apache2/bin/apxs"

/etc/portage/package.env/php
dev-lang/php php.conf

Du kannst in der /etc/portage/package.env/php auch nur eine Version benennen z.B.:
=dev-lang/php-5.6.29

Wenn du noch eine andere php Version installiert hast könntest du dann auch zwischen den beiden Versionen wechseln.
Back to top
View user's profile Send private message
tazinblack
Veteran
Veteran


Joined: 23 Jan 2005
Posts: 1070
Location: Baden / Germany

PostPosted: Tue Jan 31, 2017 11:04 am    Post subject: Reply with quote

Child_of_Sun_24 wrote:
Ich füge eigene configure optionen immer mithilfe von /etc/portage/env und /etc/portage/package.env hinzu, allerdings global, so dass keine "neue" Version entsteht.

z.B.

/etc/portage/env/php.conf
EXTRA_ECONF="--with-custom-odbc --with-apxs2=/usr/local/apache2/bin/apxs"

/etc/portage/package.env/php
dev-lang/php php.conf

Du kannst in der /etc/portage/package.env/php auch nur eine Version benennen z.B.:
=dev-lang/php-5.6.29

Wenn du noch eine andere php Version installiert hast könntest du dann auch zwischen den beiden Versionen wechseln.


Das klingt auch interessant. Da ich gerade vor dem Problem stehe, ein spezifisches Environment zu brauchen, versuch ich das gleich mal.
Die Frage ist nur, wo baue ich das ein?
_________________
Gruß / Regards
tazinblack
_______________________________________________________
what's the point in being grown up if you can't be childish sometimes
Back to top
View user's profile Send private message
tazinblack
Veteran
Veteran


Joined: 23 Jan 2005
Posts: 1070
Location: Baden / Germany

PostPosted: Tue Jan 31, 2017 12:10 pm    Post subject: Reply with quote

gefunden!

-> https://wiki.gentoo.org/wiki//etc/portage/package.env
_________________
Gruß / Regards
tazinblack
_______________________________________________________
what's the point in being grown up if you can't be childish sometimes
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum