Moderador: Moderadores
1.) Download original sources of SuperLib 3.5 from this page:
http://www.the-oasis.net/ftpmaster.php3?content=ftplib.htm
Direct link:
http://www.the-oasis.net/files/library/supfree.zip
2.) Unpack it:
unzip supfree.zip
unzip SOURCE.ZIP
3.) *nix users will need to convert original filenames to lowercase
and EOLs to native format, using these commands:
hbmk2 -sanitize *.c *.prg
4.) Apply supplied patch to the source using GNU Patch:
patch -lNi superlib.dif
5.) Build it:
hbmk2 superlib.hbp
6.) You're done.
7.) Finally, to build an application with SuperLib, use:
hbmk2 myapp.prg superlib.hbc
[vszakats]
hbmk2: Error: Referenced, missing, but unrecognized Harbour function(s):
TAKEOUT(), GETSCROW(), GETSCCOL(), SSPRINKLE()
-hblib
-inc
-olib/${hb_plat}/${hb_comp}/${hb_name}
-w1 -es2
-hbx=${hb_name}
hbsuper.prg
between.c
mline.c
nextls.c
s_scrbuf.c
curd.prg
r_hcode.prg
r_printr.prg
r_quikr.prg
r_report.prg
s_1label.prg
s_2dbrz.prg
s_aaskip.prg
s_abort.prg
s_achoi.prg
s_addsp.prg
s_aextra.prg
s_aftype.prg
s_akount.prg
s_aleng.prg
s_allbut.prg
s_amsg.prg
s_amsort.prg
s_amstat.prg
s_append.prg
s_appt.prg
s_arrang.prg
s_ascii.prg
s_astats.prg
s_at2c.prg
s_att.prg
s_bdelim.prg
s_begend.prg
s_bigel.prg
s_blanks.prg
s_bldar.prg
s_bldbf.prg
s_bldndx.prg
s_bom.prg
s_boxes.prg
s_boyear.prg
s_brsdf.prg
s_build.prg
s_bungde.prg
s_bungee.prg
s_bxx.prg
s_calck.prg
s_calcvw.prg
s_centr.prg
s_clab.prg
s_clrfun.prg
s_cls.prg
s_colpik.prg
s_copy.prg
s_copyf.prg
s_crunch.prg
s_ctrlw.prg
s_cvtdel.prg
s_datcal.prg
s_datek.prg
s_datvw.prg
s_daysin.prg
s_dbarr.prg
s_dbstat.prg
s_delar.prg
s_delet.prg
s_doyear.prg
s_dpops.prg
s_dtdiff.prg
s_dtow.prg
s_dup.prg
s_duph.prg
s_edit.prg
s_editm.prg
s_editmv.prg
s_edpict.prg
s_endsw.prg
s_enhan.prg
s_evalq.prg
s_export.prg
s_fform.prg
s_fields.prg
s_filein.prg
s_filer.prg
s_fillar.prg
s_fm2n.prg
s_fm2p.prg
s_forml.prg
s_formu.prg
s_freadl.prg
s_freq.prg
s_fulld.prg
s_gened.prg
s_genva.prg
s_getcal.prg
s_getdat.prg
s_getdfp.prg
s_getkey.prg
s_getman.prg
s_global.prg
s_globr.prg
s_hardc.prg
s_help.prg
s_helpm.prg
s_hplas.prg
s_init.prg
s_inlook.prg
s_isload.prg
s_ispart.prg
s_isvalf.prg
s_kbdesc.prg
s_list.prg
s_ljust.prg
s_lotmen.prg
s_mailm.prg
s_makeb.prg
s_mchoi.prg
s_meas.prg
s_menuv.prg
s_messyn.prg
s_mfld.prg
s_mfldt.prg
s_mmemo.prg
s_modify.prg
s_moose.prg
s_msg.prg
s_mulmyn.prg
s_nbr2st.prg
s_nkey.prg
s_notdup.prg
s_nozdiv.prg
s_old.prg
s_oldmod.prg
s_oner.prg
s_openin.prg
s_paths.prg
s_pcsel.prg
s_picknd.prg
s_plsw.prg
s_popdir.prg
s_popex.prg
s_popord.prg
s_popr.prg
s_popupk.prg
s_popvw.prg
s_pread.prg
s_prnpor.prg
s_prnt.prg
s_prntf.prg
s_prog.prg
s_proper.prg
s_pseek.prg
s_pulldn.prg
s_purgem.prg
s_query.prg
s_readrs.prg
s_rjust.prg
s_rmenu2.prg
s_rread.prg
s_saddr.prg
s_scmod.prg
s_screen.prg
s_scroll.prg
s_search.prg
s_setcen.prg
s_setcol.prg
s_setdat.prg
s_setex.prg
s_setkey.prg
s_sfilok.prg
s_smal.prg
s_smalk.prg
s_smgets.prg
s_snetu.prg
s_sreclo.prg
s_stan.prg
s_starts.prg
s_stod.prg
s_stretc.prg
s_strpat.prg
s_strpul.prg
s_subplu.prg
s_sumav.prg
s_super.prg
s_tabmen.prg
s_tag.prg
s_taga.prg
s_tagam.prg
s_tagf.prg
s_time.prg
s_todo.prg
s_trueva.prg
s_unbox.prg
s_uniqf.prg
s_unsel.prg
s_var2.prg
s_varlen.prg
s_viewp.prg
s_vmemo.prg
s_vview.prg
s_wild.prg
s_womon.prg
s_woyear.prg
s_writef.prg
s_xbxx.prg
$hb_pkg_dynlib.hbm
$hb_pkg_install.hbm
/*
Function: Takeout()
Purpose : Extract section of a string between delimiters
Usage : Takeout(<expC1>, <expC2>, <expN>)
Params : expC1 - string
expC2 - delimiter (beginning and end of string are considered
delimiters)
expN - occurance
Example : takeout("Next:Previous:First:Quit",":",3)
returns "First"
Returns : Section of string between delimiters, occurance <expN>.
Found in: between.c
*/
#include "extend.h"
CLIPPER takeout()
{
char *string;
char *delim;
char *result;
char *empty = 0;
quant i;
quant occur;
quant knt;
quant fnd;
quant strstart=0;
quant strlen;
quant strend;
quant size;
occur = _parni(3);
occur = occur-1; /* beginning of string = first delim */
delim = _parc(2);
string = _parc(1);
strlen = _parclen(1);
strend = strlen-1;
i = 0;
knt = 0;
fnd = 0;
/* first find occurrance */
while (i < strlen && knt < occur) /* not null, kount < occurance */
{
knt = (delim[0] == string[i]) ? knt+1 : knt ;
strstart = (knt == occur) ? i+1 : strend ;
i++;
}
fnd = (knt == occur);
while (i < strlen && (strend == strlen-1) && (fnd))
{
strend = (delim[0] == string[i]) ? i-1 : strend ;
i++;
}
knt = 0;
if (strend >= strstart && (fnd))
{
size = (strend-strstart+2);
result = _xgrab(size);
for(i = strstart; i <= strend ;i++)
result[knt++] = string[i];
result[knt] = NIL;
_retclen(result,knt);
_xfree(result);
}
else
_retclen(empty,0);
}
Bom... então o que está acontecendo ???
2017-04-05 11:45 UTC Viktor Szakats (vszakats users.noreply.github.com)
* package/mpkg_rpm_docker.sh
* temp fix: use vendored sqlite
* utils/hbmk2/hbmk2.prg
! fix to expand wildcard on *nix that came from the command-line
this fixes the sanitize commands in extras/*/README.md on *nix
systems
* extras/superlib/superlib.patch
! fix some C code warnings
+ extras/superlib/build.sh
+ add script that does all the steps described in README.md
+ extras/superlib/test.prg
+ add simple test app
* extras/superlib/superlib.hbp
* be silent
Fast-forward
ChangeLog.txt | 21 +++++++++++++++++++++
extras/superlib/build.sh | 13 +++++++++++++
extras/superlib/superlib.hbp | 2 ++
extras/superlib/superlib.patch | 18 ++++++++++++------
extras/superlib/test.prg | 5 +++++
package/mpkg_rpm_docker.sh | 6 +++++-
utils/hbmk2/hbmk2.prg | 7 -------
7 files changed, 58 insertions(+), 14 deletions(-)
Harbour 3.4.0dev () (2017-04-03 08:45)
Copyright (c) 1999-2017, https://github.com/vszakats/harbour-core/
Compiling 's3prog.prg'...
Lines 97, Functions/Procedures 5
Generating C source output to 'C:\Users\Escola\AppData\Local\Temp\hbmk_w97xnu.dir\s3prog.c'... Done.
hbmk2: Error: Referenced, missing, but unrecognized Harbour function(s):
TAKEOUT(), GETSCROW(), GETSCCOL(), SSPRINKLE()
Generating C source output to 'C:\Users\ANDERS~1\AppData\Local\Temp\hbmk_6ixlk
dir\s_xbxx.c'... Done.
E:/PROGRAMA/FONTALU/LIB52/superlib/mline.c: In function 'HB_FUN_S_GETLINE':
E:/PROGRAMA/FONTALU/LIB52/superlib/mline.c:40:6: warning: comparison is always
rue due to limited range of data type [-Wtype-limits]
E:/PROGRAMA/FONTALU/LIB52/superlib/mline.c:48:6: warning: comparison is always
alse due to limited range of data type [-Wtype-limits]
E:/PROGRAMA/FONTALU/LIB52/superlib/mline.c:58:52: warning: comparison between
gned and unsigned integer expressions [-Wsign-compare]
E:/PROGRAMA/FONTALU/LIB52/superlib/mline.c:63:21: warning: comparison between
gned and unsigned integer expressions [-Wsign-compare]
E:/PROGRAMA/FONTALU/LIB52/superlib/nextls.c: In function 'HB_FUN_NEXTLS':
E:/PROGRAMA/FONTALU/LIB52/superlib/nextls.c:14:16: warning: comparison between
igned and unsigned integer expressions [-Wsign-compare]
E:/PROGRAMA/FONTALU/LIB52/superlib/nextls.c:21:16: warning: comparison between
igned and unsigned integer expressions [-Wsign-compare]
E:/PROGRAMA/FONTALU/LIB52/superlib/s_scrbuf.c: In function 'HB_FUN_GETSCROW':
E:/PROGRAMA/FONTALU/LIB52/superlib/s_scrbuf.c:10:13: warning: variable 'rows'
t but not used [-Wunused-but-set-variable]
Usuários vendo este fórum: Google [Bot] e 13 visitantes