Nove funkcije #19371
Zatvorenbuild harbour, fmk - hbmk2 sistem, hudson c-i
0%
Povezani tiketi 12 (0 otvoreno — 12 zatvorenih)
Izmjenjeno od Ernad Husremović prije skoro 15 godina
linux build na kvm sesiji bringout-developer-amd64 (host nmraka-1)¶
pođoniću ovaj configure
http://hudson.bring.out.ba:8080/job/harbour-linux-karmic-amd64/configure
shell execute
apt-get -y install debhelper binutils build-essential libpq-dev libmysqlclient-dev libqt4-dev cd harbour make
sudo visudo
%sudo ALL=NOPASSWD: ALL
bringout@bringout-developer-amd64:~$ sudo usermod -a -G sudo bringout
Izmjenjeno od Ernad Husremović prije skoro 15 godina
bringout@bringout-developer-amd64:~/devel$ git clone git://gitorious.bring.out.ba/~hernad/harbour/hernads-harbour.git harbour
Izmjenjeno od Ernad Husremović prije skoro 15 godina
fmk_lib¶
bringout@bringout-developer-amd64:~/devel/fmk$ git clone git@gitorious.bring.out.ba:fmk/fmk_lib.git
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git remote add vsasa git://gitorious.bring.out.ba/~vsasa/fmk/vsasa-fmk_lib.git
Izmjenjeno od Ernad Husremović prije skoro 15 godina
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git checkout -b harbour origin/harbour
Branch harbour set up to track remote branch harbour from origin. Switched to a new branch 'harbour'
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git fetch vsasa
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git merge vsasa/harbour
Already up-to-date.
Izmjenjeno od Ernad Husremović prije skoro 15 godina
hernad_fmk¶
moj fmk_lib
bringout@bringout-developer-amd64:~/devel/fmk_hernad$ git clone git@gitorious.bring.out.ba:~hernad/fmk/hernads-fmk_lib.git fmk_bli
bringout@bringout-developer-amd64:~/devel/fmk_hernad/fmk_lib$ git checkout -b harbour origin/harbour
Branch harbour set up to track remote branch harbour from origin. Switched to a new branch 'harbour'
upstream
bringout@bringout-developer-amd64:~/devel/fmk_hernad/fmk_lib$ git remote add upstream git://gitorious.bring.out.ba/fmk/fmk_lib.git
bringout@bringout-developer-amd64:~/devel/fmk_hernad/fmk_lib$ git fetch upstream
remote: Counting objects: 73, done. remote: Compressing objects: 100% (46/46), done. remote: Total 50 (delta 32), reused 0 (delta 0) Unpacking objects: 100% (50/50), done. From git://gitorious.bring.out.ba/fmk/fmk_lib * [new branch] clipper -> upstream/clipper * [new branch] harbour -> upstream/harbour * [new branch] master -> upstream/master
bringout@bringout-developer-amd64:~/devel/fmk_hernad/fmk_lib$ git merge upstream/harbour
Auto-merging fmk_codes/browse.prg Removing fmk_codes/codes_util_2.prg Merge made by recursive. fmk_codes/Makefile | 1 - fmk_codes/browse.prg | 1 + fmk_codes/codes_util_2.prg | 85 -------------------------------------------- fmk_common/Makefile | 1 + fmk_common/num_ut.prg | 23 ++++++++++++ include/f_fmk.ch | 2 + 6 files changed, 27 insertions(+), 86 deletions(-) delete mode 100644 fmk_codes/codes_util_2.prg create mode 100644 fmk_common/num_ut.prg
e sad i ja imam ažuran fmk_lib
Izmjenjeno od Ernad Husremović prije skoro 15 godina
fmk git sa submodulima¶
bringout@bringout-developer-amd64:~/devel/fmk/fmk$ git submodule init
bringout@bringout-developer-amd64:~/devel/fmk/fmk$ git submodule add git@gitorious.bring.out.ba:fmk/fmk_lib.git fmk_lib
Izmjenjeno od Ernad Husremović prije skoro 15 godina
gitorius krovni fmk projekat¶
ovo će mi trebati u harbour-u da buildam sve odjednom
git://gitorious.bring.out.ba/fmk/fmk.git
Izmjenjeno od Ernad Husremović prije skoro 15 godina
ubuntu amd64 build¶
evo ga, linux build radi
http://hudson.bring.out.ba:8080/job/fmk-ubuntu-amd64/configure
na build slave-u sam dibio
root@build-ubuntu-karmic-amd64:/build/workspace/fmk-ubuntu-amd64# ls */*.a -l
-rw-r--r-- 1 root root 882172 2010-01-12 14:47 fmk_common/libfmk_common.a -rw-r--r-- 1 root root 1474856 2010-01-12 14:47 fmk_lib/libfmk_lib.a
Izmjenjeno od Ernad Husremović prije skoro 15 godina
i ... tada ... evo imam build i na windows-ima nakon restarta dell-p4-pegla
ali imam nepotrebno linije to trebam sa -q parametrom eliminisati
Lines 105883, Functions/Procedures 1 Generating C source output to '.hbmk\win\mingw\gvars.c'... Done. Compiling 'fmk_roba/adm_db.prg'... Lines 105883, Functions/Procedures 1 Generating C source output to '.hbmk\win\mingw\gvars.c'... Done. Compiling 'fmk_roba/adm_db.prg'... 100 100 200 300 100 200 300 100 200 300 100 Lines 107381, Functions/Procedures 3 Generating C source output to '.hbmk\win\mingw\adm_db.c'... Done. hbmk2: Compiling... hbmk2: Creating static library... libfmk_common.a end fmk_common Finished: SUCCESS
Izmjenjeno od Ernad Husremović prije skoro 15 godina
fin build¶
Generating C source output to '.hbmk/linux/gcc/povrat_dokumenta_priprema.c'... D one. Compiling 'rpt_ostali.prg'... Lines 112866, Functions/Procedures 1 Generating C source output to '.hbmk/linux/gcc/rpt_ostali.c'... Done. hbmk2: Compiling... hbmk2: Linking... fin .hbmk/linux/gcc/db.o: In function `HB_FUN_DUPLI': db.c:(.text+0x0): multiple definition of `HB_FUN_DUPLI' .hbmk/linux/gcc/azuriranje_naloga.o:azuriranje_naloga.c:(.text+0x120): first def ined here /usr/bin/ld: cannot find -lfmk_skeleton collect2: ld returned 1 exit status hbmk2: Error: Running linker. 1
Izmjenjeno od Ernad Husremović prije skoro 15 godina
bringout@bringout-developer-amd64:~/devel/fmk/fmk/fin$ fnd_prg "on dupli"./azuriranje_naloga.prg:319:static function dupli_nalog(cSeek)
./azuriranje_naloga.prg:728:function Dupli(cIdFirma,cIdVn,cBrNal) ./db.prg:13:function Dupli(cIdFirma,cIdVn,cBrNal)
Izmjenjeno od Ernad Husremović prije skoro 15 godina
jedinstveno ime source-a u jednom lib-u¶
ali imam mali milion simbola koji nedostaju
sa nm sam skontao u čemu je fol: ako ima više main.prg on će izvesti samo simbole iz jednog prg_fajla
Izmjenjeno od Ernad Husremović prije skoro 15 godina
nakon čišćenja sveo na:
bringout@bringout-developer-amd64:~/devel/fmk/fmk/fin$ hbmk2 fin.hbp
hbmk2: Processing configuration: /usr/local/bin/hbmk.cfg hbmk2: Linking... fin ../fmk_lib/libfmk_lib.a(fvidi.o):(.data+0x90): undefined reference to `HB_FUN_QT_QAPPLICATION' ../fmk_lib/libfmk_lib.a(fvidi.o):(.data+0xd0): undefined reference to `HB_FUN_QMAINWINDOW' ../fmk_lib/libfmk_lib.a(fvidi.o):(.data+0x190): undefined reference to `HB_FUN_QT_QAPPLICATION_EXEC' ../fmk_lib/libfmk_lib.a(fvidi.o):(.data+0x1d0): undefined reference to `HB_FUN_QURL' ../fmk_lib/libfmk_lib.a(fvidi.o):(.data+0x230): undefined reference to `HB_FUN_QTEXTBROWSER' ../fmk_lib/libfmk_lib.a(skeleton.o):(.data+0x1ad0): undefined reference to `HB_FUN_LETO' collect2: ld returned 1 exit status hbmk2: Error: Running linker. 1
Izmjenjeno od Ernad Husremović prije skoro 15 godina
iščistio dotle da mogu pokrenuti app
setujem engine (sc_start) setujem default engine ...DBFCDX startujem oApp:db() setujem globalne varijable Error DBFCDX/1004 Create error: //127.0.0.1:3000/gparams.dbf (DOS Error 2) Called from DBCREATE(0) Called from DBCREATE2(284) Called from CREGPARAM(220) Called from SC_START(95) Called from TFINMOD:RUN(132) Called from MAINFIN(38) Called from MAIN(12)
istina ovo je sada vezano za ono hardcodirano testiranje letodb-a
Izmjenjeno od Ernad Husremović prije skoro 15 godina
bringout@bringout-developer-amd64:~/devel/fmk/fmk$ git submodule
-ebed6de690425f7b7b6119c559c99aa7e4bb743d fin -32b6c9196bf9217107274a98072be58d1619bb41 fmk_common -4dbac81cf7893da23cc28cca82187f27bb38cec5 fmk_lib
Izmjenjeno od Ernad Husremović prije skoro 15 godina
hudson windows build¶
evo ga windows build:
http://hudson.bring.out.ba:8080/job/fmk-windows/ws/fin/fin.exe
Izmjenjeno od Ernad Husremović prije skoro 15 godina
Izmjenjeno od Ernad Husremović prije skoro 15 godina
na dell-p4-pegla sam pokrenuo fin.exe
C:\build\workspace\fmk-windows\fin>fin
setujem engine (sc_start) setujem default engine ...DBFCDX startujem oApp:db() setujem globalne varijable Error DBFCDX/1001 Open error: //127.0.0.1:3000\gparams.dbf (DOS Error 53) Called from DBUSEAREA(0) Called from SET_GLOBAL_VARS_0_PRIJE_PRIJAVE(223) Called from SC_START(98) Called from TFINMOD:RUN(132) Called from MAINFIN(38) Called from MAIN(12)
Izmjenjeno od Ernad Husremović prije skoro 15 godina
sutra aBd idemo ovo pokrenuti oprave. treba još malo pogledati da li da se ide na NETIO engine ili standardni DBFCDX
takođe vidjeti da se uzme ovaj jedan windows GT što ga drugi najviše koriste
Izmjenjeno od Ernad Husremović prije skoro 15 godina
- Naslov promijenjeno iz build harbour, fmk - hbmk2 sistem u build harbour, fmk - hbmk2 sistem, hudson c-i
Izmjenjeno od Ernad Husremović prije skoro 15 godina
hernads-fmk klon¶
kloniranjem fmk napravio hernads-fmk
onda sam napravio hernad branch
bringout@bringout-developer-amd64:~/devel/hernads-fmk$ git branch -l
harbour * hernad master
i u tom branch-u podesio .gitmodules ručno
bringout@bringout-developer-amd64:~/devel/hernads-fmk$ cat .gitmodules
[submodule "fmk_lib"] path = fmk_lib url = git@gitorious.bring.out.ba:~hernad/fmk/hernads-fmk_lib.git [submodule "fmk_common"] path = fmk_common url = git@gitorious.bring.out.ba:~hernad/fmk/hernads-fmk_common.git [submodule "fin"] path = fin url = git@gitorious.bring.out.ba:~hernad/fmk/hernads-fin.git
u svakom od pod-git repos-u sada podešavam git checkout -b harbour origin/harbour i radim development ...
hernads-fmk će mi služiti za pravljenje fmk sa mojim privatnim clonovima fmk repozitorija.
Izmjenjeno od Ernad Husremović prije skoro 15 godina
da napomenem da sam sa
git submodule init
git submodule update
izvršio inicijalni checkout repos-a
Izmjenjeno od Ernad Husremović prije skoro 15 godina
sad sam raščistio svoj developerski dir
bringout@bringout-developer-amd64:~/devel$ ls- fmk - upstream fmk
- hernads-fmk - fmk sa submodulima koji su moji privatni klonovi fmk repos-a
- harbour-labs - moji harbour testovi harbour
- hernads-harbour - moj harbour clone
Izmjenjeno od Ernad Husremović prije skoro 15 godina
fmk hernad-harbour¶
ipak ću sve staviti u jedan fmk sa branch-ovima po uzoru na #19423 ovaj hernads-fmk klon mi neće trebati ...
Izmjenjeno od Ernad Husremović prije skoro 15 godina
bringout@bringout-developer-amd64:~/devel/fmk$ git checkout -b harbour-hernad
Switched to a new branch 'harbour-hernad'
Izmjenjeno od Ernad Husremović prije skoro 15 godina
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git checkout -b harbour-hernad hernad/harbour
Branch harbour-hernad set up to track remote branch harbour from hernad. Switched to a new branch 'harbour-hernad'
Izmjenjeno od Ernad Husremović prije skoro 15 godina
napravio sam set lijepih skripti za checkout, commit i push:
http://gitorious.bring.out.ba/fmk/fmk/trees/harbour-hernad
checkout repozitorije napravi potrebne lokalne branchove ako ih nije bilo
fetch and merge fetchira sub repos-e
commit and push pushira fmk i sub repose u odgovarajuće branchove
Izmjenjeno od Ernad Husremović prije skoro 15 godina
hernads-fmk clone mi ne treba nakon ovoga
Izmjenjeno od Ernad Husremović prije skoro 15 godina
git push lokalni branch harbour-hernad -> remote hernad / harbour¶
trebalo mi je vremena da skontam kako da ovo uradim:
fin .git/config
.... [remote "hernad"] url = git@gitorious.bring.out.ba:~hernad/fmk/hernads-fin.git fetch = +refs/heads/*:refs/remotes/hernad/* push = refs/heads/harbour-hernad <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< proradilo kad sam dodao ovo pravilo [branch "clipper"] remote = origin merge = refs/heads/clipper [branch "harbour-hernad"] remote = hernad merge = refs/heads/harbour
bringout@bringout-developer-amd64:~/devel/fmk/fin$ git push
Counting objects: 5, done. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 332 bytes, done. Total 3 (delta 2), reused 0 (delta 0) => Syncing Gitorious... [OK] To git@gitorious.bring.out.ba:~hernad/fmk/hernads-fin.git * [new branch] harbour-hernad -> harbour-hernad bringout@bringout-developer-amd64:~/devel/fmk/fin$
Izmjenjeno od Ernad Husremović prije skoro 15 godina
uh opet nije to to :( ja ne želim novi branch na remote repos-u
Izmjenjeno od Ernad Husremović prije skoro 15 godina
evo kako to ručno ide:
bringout@bringout-developer-amd64:~/devel/fmk/fmk_common$ git push hernad harbour-hernad:harbour
Counting objects: 7, done. Compressing objects: 100% (4/4), done. Writing objects: 100% (4/4), 422 bytes, done. Total 4 (delta 2), reused 0 (delta 0) => Syncing Gitorious... [OK] To git@gitorious.bring.out.ba:~hernad/fmk/hernads-fmk_common.git 32b6c91..ef766a4 harbour-hernad -> harbour
Izmjenjeno od Ernad Husremović prije skoro 15 godina
podešenje .git/config-a da se ovo automatski radi
[remote "hernad"] url = git@gitorious.bring.out.ba:~hernad/fmk/hernads-fin.git fetch = +refs/heads/*:refs/remotes/hernad/* push = refs/heads/harbour-hernad:harbour <<<<<<<<<<<<<<<< lokalni harbour-hernad pushiraj u hernad
bringout@bringout-developer-amd64:~/devel/fmk/fin$ git push
Total 0 (delta 0), reused 0 (delta 0) => Syncing Gitorious... [OK] To git@gitorious.bring.out.ba:~hernad/fmk/hernads-fin.git 1ce6b43..82a2cc1 harbour-hernad -> harbour
Izmjenjeno od Ernad Husremović prije skoro 15 godina
git workflow: fmk_lib main repos, privatni klon hernad - merging -¶
da opišem sada kako se "vrtim" između repos-a
nalazim se na harbour-hernad lokalnom branchu
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git branch -l
clipper harbour * harbour-hernad master
promjene se pushiraju na moj privatni klon, u harbour branch
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git push
Counting objects: 7, done. Compressing objects: 100% (4/4), done. Writing objects: 100% (4/4), 393 bytes, done. Total 4 (delta 3), reused 0 (delta 0) => Syncing Gitorious... [OK] To git@gitorious.bring.out.ba:~hernad/fmk/hernads-fmk_lib.git 3d07804..354822a harbour-hernad -> harbour
mergiranje u glavni repos¶
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git checkout harbour
Switched to branch 'harbour' bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git fetch hernad bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git merge hernad/harbour Updating 4dbac81..354822a Fast forward common/os_util.prg | 7 +-- db/db_admin.prg | 4 +- db/db_create.prg | 5 +- include/fmk.ch | 133 +++++++++++++++++++++++++++++++++++ include/fmk_std.ch | 129 --------------------------------- include/o_fmk.ch | 4 +- skeleton/skeleton.prg | 37 +++++++--- skeleton/skeleton_app.prg | 2 +- skeleton/skeleton_global_vars_0.prg | 1 + 9 files changed, 171 insertions(+), 151 deletions(-)
bringout@bringout-developer-amd64:~/devel/fmk/fmk_lib$ git push
Counting objects: 46, done. Compressing objects: 100% (32/32), done. Writing objects: 100% (32/32), 4.28 KiB, done. Total 32 (delta 25), reused 0 (delta 0) => Syncing Gitorious... [OK] To git@gitorious.bring.out.ba:fmk/fmk_lib.git 4dbac81..354822a harbour -> harbour
evo mog .git config-a
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = git@gitorious.bring.out.ba:fmk/fmk_lib.git push = refs/heads/harbour:harbour [branch "master"] remote = origin merge = refs/heads/master [branch "harbour"] remote = origin merge = refs/heads/harbour [remote "vsasa"] url = git://gitorious.bring.out.ba/~vsasa/fmk/vsasa-fmk_lib.git fetch = +refs/heads/*:refs/remotes/vsasa/* [remote "hernad"] url = git@gitorious.bring.out.ba:~hernad/fmk/hernads-fmk_lib.git fetch = +refs/heads/*:refs/remotes/hernad/* push = refs/heads/harbour-hernad:harbour [branch "clipper"] remote = origin merge = refs/heads/clipper [branch "harbour-hernad"] remote = hernad merge = refs/heads/harbour
Izmjenjeno od Ernad Husremović prije skoro 15 godina
.git config šta je bitno uočiti¶
u gornjem git configu postoji i vsasa repos koji je read-only (git://) njega jedino čitam i radim mergiranje u glavni repos ili u svoj repos - kako god mi paše.
main fmk repos-i trebaju biti stabilni tako da se mergiranje u njih vrši tek kada se provjeri da privatni (npr. clipper-vsasa, harbour-hernad) build-ovi prolaze osnovne testove
Izmjenjeno od Ernad Husremović prije skoro 15 godina
korisne skripte za update repos-a¶
na fmk / harbour-hernad branch-u sam podesio ove korisne skripte
bringout@bringout-developer-amd64:~/devel/fmk$ ls *sh
checkout_repositories.sh commit_push_all.sh fetch_merge_repositories.sh
na osnovu gornjih saznanja sada one pushiraju po principu branch:remote_branch
Izmjenjeno od Ernad Husremović prije više od 14 godina
- Status promijenjeno iz Dodijeljeno u Zatvoreno