-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!opal.futuro.pl!news.internetia.pl!not-f
or-mail
From: "Andrzej Ekiert" <d...@t...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: [OT] Zarządzanie konfiguracją modułów kodu źródłowego
Date: Sun, 06 May 2012 16:10:06 +0200
Organization: Netia S.A.
Lines: 93
Message-ID: <o...@j...jedi>
References: <o...@j...jedi> <jo5tgs$asd$1@inews.gazeta.pl>
<o...@j...jedi> <jo5vi6$g9s$1@inews.gazeta.pl>
NNTP-Posting-Host: ip-91-192-3-72.techmedia.com.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes
Content-Transfer-Encoding: Quoted-Printable
X-Trace: mx1.internetia.pl 1336313520 27300 91.192.3.72 (6 May 2012 14:12:00 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Sun, 6 May 2012 14:12:00 +0000 (UTC)
X-Tech-Contact: u...@i...pl
User-Agent: Opera Mail/10.10 (MacIntel)
X-Server-Info: http://www.internetia.pl/
Xref: news-archive.icm.edu.pl pl.misc.elektronika:630686
[ ukryj nagłówki ]Dnia 06-05-2012 o 15:49:54 Sebastian Biały <h...@p...onet.pl>
napisał(a):
> On 2012-05-06 15:30, Andrzej Ekiert wrote:
>> Ale to mi w żaden sposób nie dotyka mojego problemu. Jeśli odwołam się w
>> "../lib/i2c/i2ccore.c" do nowego parametru konfiguracyjnego C_I2C_SHMOO,
>> to muszę go ręcznie zdefiniować w każdym i2cconfiguration.h w każdym
>> projekcie.
>
> #include "../lib/i2c/defaultconfiguration.h"
> #include "i2cconfiguration.h"
>
> To powinno zadzialać jak gdyby dziedziczenie parametrów.
Mam to dość podobnie zrobione. Samo dziedziczenie defaultu to nie jest
najlepszy pomysł, bo nowo dodany parametr może przejść niezauważony. Więc
albo dziedziczę całą konfigurację modułu, albo wszystkie parametry muszą
być w projekcie przedefiniowane.
> Możesz też uzyć #ifndef FOO, #define FOO DEFAULR_FOO.
>
> Ewentualnie, znacznie bezpieczniej, #ifndef FOO, #error "FOO not set"
To już w zasadzie mam wbudowane: zawsze kompiluję z -Wundef i zamiast
#ifdef do włączania opcji używam "#if C_FOOBAR == ENABLED". Mam wtedy
warning gdy coś nie jest ustawione.
>> Jeśli zmienię nazwę i trochę funkcje parametru C_I2C_FOO na
>> C_I2C_BAR, to znowu zmiana w każdym projekcie. Chodzi mi o sposób lub
>> narzędzie do automatyzacji takich zmian: wykrywanie niedodanych
>> definicji, eliminację przestarzałych definicji, itp.
>
> Najlepiej, gdybys tego nie robił w ogóle. takie narzędzie jest
> niebezpieczne. Wydaje mi się, że najbezpieczniej jest zdać się na
> kompilator. Czyli raz na jakiś czas budujesz wszystkie swoje żywe
> projekty w całości i poprawiasz tam gdzie padła kompilacja.
Skłaniam się ku użyciu narzędzia, żeby zamiast otwierać 20 plików (a za
parę lat może 100?) i wszędzie robić 'paste' nowego parametru, móc kliknąć
"update". Oczywiście kompilacja potem i tak jest nieodzowna (nie mówiąc o
teście).
> Podobnie do tego pomysłu działa konfigurator opcji kompilacji linuxa
> (kernela).
Nawet zaglądałem mu w źródła, czy by się nie dało czegoś wykorzystać, ale
trochę mnie odrzuciło. Poza tym w menuconfig jednak niezbyt dobrze widać
nowe parametry, a usunięte po prostu po cichu znikają (jeśli się nic nie
zmieniło od ostatniego razu, jak kompilowałem kernel).
Miałem po prostu nadzieję, że kogoś już to uwierało i jakieś narzędzie
istnieje. No nic, napiszę sobie sam.
ae
Następne wpisy z tego wątku
- 06.05.12 16:24 Jacek Domański
- 06.05.12 16:28 Zbych
- 06.05.12 16:42 Sebastian Biały
- 06.05.12 16:50 Andrzej Ekiert
- 06.05.12 16:55 Michoo
- 06.05.12 17:08 Andrzej Ekiert
- 06.05.12 17:21 mk
- 06.05.12 17:35 Sebastian Biały
- 06.05.12 17:41 marek
- 06.05.12 17:41 Andrzej Ekiert
- 06.05.12 18:18 mk
- 06.05.12 18:32 Zbych
- 06.05.12 19:00 Sebastian Biały
- 06.05.12 21:32 mk
- 06.05.12 22:05 Sebastian Biały
Najnowsze wątki z tej grupy
- Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- Pendrive zdycha, czy coś jeszcze innego? Problem z plikami.
- Odkurzacz Smapp Dynamic - dawny Zelmer
- Nagra IV i zewnętrzny pilot
- Fejk muzyczny czy nie fejk
- Raspberry Pi 3 Model B+
- Kuchenka elektryczna
- test
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
Najnowsze wątki
- 2025-03-20 Grubość socketa AM4+procesor
- 2025-03-20 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-03-20 Warszawa => Senior Programmer C <=
- 2025-03-20 Re: Dlaczego tak odstają od Tesli?
- 2025-03-20 Greenpeace została zobowiązana do zapłaty niemal 667 mln dolarów [USA,wyrok sądu]
- 2025-03-20 Re: Dlaczego tak odstają od Tesli?
- 2025-03-19 Brak ograniczeń dla chińskiego kapitału - wam nie do rządu, tylko na zmywak do chińskiej knajpy!!!
- 2025-03-19 Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- 2025-03-19 szal-Unia == federacja policyjna
- 2025-03-19 Polsza == państwo policyjne
- 2025-03-19 Grzegorz Płaczek o programie szczepień dzieci. ,,Stworzono eldorado dla firm farmaceutycznych"
- 2025-03-19 Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- 2025-03-19 Gemini
- 2025-03-19 Mokry sen Zenka :)
- 2025-03-19 Re: Dlaczego tak odstają od Tesli?